-
Notifications
You must be signed in to change notification settings - Fork 3
/
index_ko.html
379 lines (327 loc) · 21.8 KB
/
index_ko.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="content-type" />
<title>Xitrum</title>
<link rel="shortcut icon" href="parts/favicon.ico" />
<!-- Framework CSS -->
<link rel="stylesheet" href="css/blueprint/screen.css" type="text/css" media="screen, projection" />
<link rel="stylesheet" href="css/blueprint/plugins/fancy-type/screen.css" type="text/css" media="screen, projection" />
<link rel="stylesheet" href="css/blueprint/print.css" type="text/css" media="print" />
<!--[if lt IE 8]><link rel="stylesheet" href="css/blueprint/ie.css" type="text/css" media="screen, projection"><![endif]-->
<link rel="stylesheet" href="css/style.css" type="text/css" media="all" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-34582032-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head>
<body>
<div class="container">
<div class="span-24 last">
<div class="language_choices">
<a href="index.html"><img src="parts/english.png" class="img-circle"></a>
<a href="index_ja.html"><img src="parts/japanese.png" class="img-circle"></a>
<a href="index_ko.html"><img src="parts/korean.png" class="img-circle"></a>
<a href="index_ru.html"><img src="parts/russian.png" class="img-circle"></a>
<a href="index_vi.html"><img src="parts/vietnamese.png" class="img-circle"></a>
</div>
</div>
<div id="top_links" class="span-18 prepend-6 last">
<ul class="menu">
<li class="span-3"><a href="guide.html"> 가이드</a></li>
<li class="span-3"><a href="api.html"> Scaladoc</a></li>
<li class="span-3"><a href="https://github.com/xitrum-framework/xitrum-new/archive/master.zip"> 다운로드</a></li>
<li class="span-3"><a href="https://groups.google.com/group/xitrum-framework"> 그룹스</a></li>
<li class="span-3 last"><a href="consulting.html"> 컨설팅</a></li>
</ul>
</div>
<div class="clearfix"></div>
<div id="header">
<div class="span-8">
<img src="parts/whale.png" alt="xitrum"/>
</div>
<div id="balloon" class="span-16 last">
<div class="span-11 prepend-3 append-1 last">
<h2><a class="reference" href="https://xitrum-framework.github.com/">Xitrum</a> 은
<a class="reference external" href="http://netty.io/">Netty</a>, <a class="reference external" href="http://akka.io/">Akka</a>, <a class="reference external" href="http://www.hazelcast.com/">Hazelcast</a> 기반의 비동기적으로 구축가능한 스칼라 HTTP(s) 웹 프레임워크 입니다 </h2>
</div>
<div class="quote push-2 span-13 last">
<p>Wow, this is a really impressive body of work, arguably the most complete Scala framework outside of Lift (but much easier to use).
Xitrum is truly a full stack web framework, all the bases are covered, including wtf-am-I-on-the-moon extras like ETags, static file cache identifiers & auto-gzip compression. Tack on built-in JSON converter, before/around/after interceptors, request/session/cookie/flash scopes, integrated validation (server & client-side, nice), built-in cache layer (Hazelcast), i18n a la GNU gettext, Netty (with Nginx, hello blazing fast), etc. and you have, wow.</p>
<div class="alt large right append-1">from <a class="reference external" href="https://groups.google.com/group/xitrum-framework/msg/d6de4865a8576d39">a user</a></div>
</div> <!-- End of div.quote -->
<div class="clearfix"></div>
</div> <!-- End of div#balloon -->
<div class="clearfix"></div>
</div> <!-- End of div#header -->
<div class="content prepend-1 append-1 span-22">
<br/>
<br/>
<h2 class="title">특장점</h2>
<p>There are comprehensive <a href="guide.html">usage guides</a> for many languages.</p>
<ul class="simple">
<li>스칼라의 사상에 기반하여 Typesafe 합니다. 모든 API는 가능한 typesafe 하도록 되어 있습니다.</li>
<li>비동기, Netty 사상을 기반으로, 모든 요청에 즉시 응답할 필요가 없습니다. Long polling, chunked response (streaming), WebSocket,
,SockJS 가 지원됩니다.</li>
<li><a class="reference external" href="http://netty.io/">Netty</a> 에 내장된 고속 HTTP(s) 서버. (Java 엔진과 OpenSSL 엔진중 선택할수 있습니다.)
Xitrum 의 정적 파일 속도는 <a class="reference external" href="https://gist.github.com/3293596">Nginx</a> 와 비슷합니다.</li>
<li>고속응답을 위한 서버측과 클라이어트 양측의 대용량 캐시. 웹서버 레이어에서는 작은 파일들은 메모리에 캐시되고 큰 파일들은 NIO의 zero copy를 이용합니다.
웹 프레임워크 레이어 에서는 Rails 처럼 page, action,object cache 를 선언할 수 있습니다.
<a class="reference external" href="http://code.google.com/speed/page-speed/docs/rules_intro.html">All Google’s best practices</a>
에 있는것 처럼 조건부 GET 에 대해 클라이언트측 캐싱을 할 수 있습니다. 물론 브라우저에 강제로 요청을 재전송 할 수도 있습니다.</li>
<li> 정적 파일을 위한 <a class="reference external" href="http://en.wikipedia.org/wiki/Byte_serving">Range requests</a>
지원. 스마트폰으로의 동영상 전송시 다운로드 중지/재개가 가능합니다.</li>
<li><a class="reference external" href="http://en.wikipedia.org/wiki/Cross-origin_resource_sharing">CORS</a> 지원.</li>
<li>JAX-RS 와 Rails 사상에 기반한 자동 경로 수집. 경로를 한곳에 모을 필요가 없습니다. 이 분산 경로 기능으로 어플리케이션을 다른 어플리케이션에 쉽게 넣을 수 있습니다.
블로그 엔진을 만든다면, JAR 파일로 묶어서 다른 어플리케이션에 넣으면 자동으로 기능을 수행할것 입니다.
라우팅은 양방향입니다: URL들을 typesafe 한 방법으로 재 생성이 가능합니다.(리버스 라우팅)
<a class="reference external" href="http://swagger.wordnik.com/">Swagger Doc</a> 을 이용하여 라우팅을 문서화 할수도 있습니다.</li>
<li>개발모드에서는 클래스와 경로는 자동으로 재생 됩니다.</li>
<li>독립적인 <a class="reference external" href="http://scalate.fusesource.org/">Scalate</a>
템플릿이나 스칼라 인라인 XML을 이용하여 뷰를 작성할 수 있습니다.둘 모두 typesafe 합니다.</li>
<li>세션은 (확장을 위해)쿠키에 저장되거나 (안정성을 위해) <a class="reference external" href="http://www.hazelcast.com/">Hazelcast</a> 에 저장됩니다.
연속적인 요청이 필요한 액션일 경우 일반적으로 쿠키에 담기에 너무 크기 때문에 Hazelcast 가 적합힙니다. 또한 프로세스간 분산캐시(더 빠르고 편한)와 pub/sub를 제공하기 때문에 따로 서버를 구축할 필요가 없습니다.
<li><a class="reference external" href="http://jqueryvalidation.org/">jQuery Validation</a> 로 브라우저와 서버에서 검증을 합니다.</li>
<li>국제화는 <a class="reference external" href="http://en.wikipedia.org/wiki/GNU_gettext">GNU gettext</a> 를 사용하여 자동으로 추출되어 번역되므로, 속성파일들에 대한 번거로움이 사라집니다.
번역 및 병합에 강력한 툴인 <a class="reference external" href="http://www.poedit.net/screenshots.php">Poedit</a> 를 사용할 수 있습니다.
gettext는 다른 솔루션과 달리 단수와 복수를 지원합니다.</li>
<li>Xitrum 은 <a class="reference external" href="https://github.com/scalatra/scalatra">Scalatra</a>
와 <a class="reference external" href="http://liftweb.net/">Lift</a> 사이의 스펙트럼을 채우려고 하고 있습니다: Scalatra 보다 강력하고 Lift 보다 쉽게 RESTful API와 Postback 을 쉽게 구축할 수 있습니다. Xitrum 은 Scalatra 처럼 controller-first 입니다,
<a class="reference external" href="http://www.assembla.com/wiki/show/liftweb/View_First">view-first</a> 인 Lift 와는 다릅니다..
대다수가 controller-first를 사용하고 있습니다.</li>
</ul>
<p>확장은 쉽게, 노드를 풀에 던지기만 하면 됩니다.</p>
<img src="parts/whale_pool.png" alt="Scalability"/>
<br /><br />
<div class="span-22">
<div class="span-11">
<h2 class="title">Hello World 예제</h2>
<pre><code>import xitrum.Action
import xitrum.annotation.GET
@GET("url/to/HelloAction")
class HelloAction extends Action {
def execute() {
val urlToHelloActor = url[HelloActor]
respondHtml(
<xml:group>
<p>Hello {remoteIp}!</p>
<a href={urlToHelloActor}>Actor example</a>
</xml:group>
)
}
}</code></pre>
<p>
The above action runs directly on Netty's IO thread pool.
It's very fast if your action is simple.
If it's more complex, avoid blocking
request receiving and response responding,
by running it on another thread pool,
by extending <code>xitrum.FutureAction</code>.
</p>
</div>
<div class="span-10">
<h2 class="title">Actor 예제</h2>
<pre><code>import scala.concurrent.duration._
import akka.actor.ReceiveTimeout
import xitrum.ActorAction
import xitrum.annotation.GET
@GET("url/to/HelloActor")
class HelloActor extends ActorAction {
def execute() {
log.info("Request received: " + request)
// Communicate with another actor
anotherActorRef ! "aMsg"
// Wait for the above actor to reply within 5s
context.setReceiveTimeout(5.seconds)
context.become {
case aReply =>
respondText(aReply)
case ReceiveTimeout =>
respondText("Timeout")
}
}
override def postStop() {
log.info("Connection closed or response sent")
super.postStop()
}
}</code></pre>
<p>Just annotate your actors and they will be accessible from web!</p>
</div>
<div class="clearfix"></div>
</div>
<div class="span-22">
<div class="span-11">
<h2 class="title">WebSocket 예제</h2>
<pre><code>import xitrum.{
WebSocketAction,
WebSocketText, WebSocketBinary,
WebSocketPing, WebSocketPong
}
import xitrum.annotation.WEBSOCKET
@WEBSOCKET("url/to/EchoWebSocketActor")
class EchoWebSocketActor extends WebSocketAction {
def execute() {
log.info("WebSocket onopen")
context.become {
case WebSocketText(text) =>
respondWebSocketText(text)
case WebSocketBinary(bytes) =>
respondWebSocketBinary(bytes)
case WebSocketPing =>
// Xitrum automatically sends pong for you,
// you don't have to send pong yourself
case WebSocketPong =>
// Client has received your ping
}
}
override def postStop() {
log.info("WebSocket onclose")
super.postStop()
}
}</code></pre>
</div>
<div class="span-10">
<h2 class="title">SockJS 예제</h2>
<pre><code>import xitrum.{SockJsAction, SockJsText}
import xitrum.annotation.SOCKJS
@SOCKJS("url/to/EchoSockJsActor")
class EchoSockJsActor extends SockJsAction {
def execute() {
log.info("SockJS onopen")
context.become {
case SockJsText(text) =>
respondSockJsText(text)
}
}
override def postStop() {
log.info("SockJS onclose")
super.postStop()
}
}</code></pre>
</div>
<div class="clearfix"></div>
</div>
<div class="clearfix"></div>
<h2 class="title">프리젠테이션</h2>
<div>
<table>
<tr>
<td><iframe width="400" height="340" src="//www.slideshare.net/slideshow/embed_code/43338762" frameborder="0" allowfullscreen></iframe></td>
<td><iframe width="400" height="340" src="//www.slideshare.net/slideshow/embed_code/38765630" frameborder="0" allowfullscreen></iframe></td>
</tr>
</table>
<table>
<tr>
<td><iframe width="400" height="340" src="//www.slideshare.net/slideshow/embed_code/36938480" frameborder="0" allowfullscreen></iframe></td>
<td><iframe width="400" height="340" src="//www.slideshare.net/slideshow/embed_code/40729551" frameborder="0" allowfullscreen></iframe></td>
</tr>
</table>
<table>
<tr>
<td><iframe width="400" height="225" src="//www.youtube.com/embed/Ds7kQ0w70Kk" frameborder="0" allowfullscreen></iframe></td>
<td><iframe width="400" height="225" src="//www.youtube.com/embed/h45QQ45D9P8" frameborder="0" allowfullscreen></iframe></td>
</tr>
</table>
</div>
<div class="section" id="create-new-empty-xitrum-project">
<h2 class="title">템플릿을 이용하여 Xitrum 프로젝트 생성하기</h2>
<p><a href="https://github.com/xitrum-framework/xitrum-new">xitrum-new</a> project 를 참고하여</p>
<p>
<a class="reference external" href="https://github.com/xitrum-framework/xitrum-new/archive/master.zip">xitrum-new.zip</a> 파일을 다운로드,
압축을 풀고, 실행합니다:</p>
<pre><code>sbt/sbt run</code></pre>
<p>빈 프로젝트가 <a class="reference external" href="http://localhost:8000/">http://localhost:8000/</a>
와 <a class="reference external" href="https://localhost:4430/">https://localhost:4430/</a> 에서 가동되는것을 볼 수 있습니다.</p>
<p>Eclipse 프로젝트 생성:</p>
<pre><code>sbt/sbt eclipse</code></pre>
</div>
<div class="section" id="demo-projects">
<h2 class="title">데모 프로젝트들</h2>
<ul>
<li>
<a class="reference external" href="https://github.com/xitrum-framework/xitrum-demos">Xitrum Demos</a>
</li>
<li><a class="reference external" href="https://github.com/xitrum-framework/xitrum-placeholder">Image Placeholder</a></li>
<li><a class="reference external" href="https://github.com/xitrum-framework/comy">Simple URL shortener</a></li>
<li><a class="reference external" href="https://github.com/xitrum-framework/xitrum-tictactoe">Tictactoe</a></li>
<li><a class="reference external" href="https://github.com/xitrum-framework/xitrum-multimodule-demo">Collecting routes from multiple modules (libs)</a></li>
</ul>
</div>
<div class="section" id="news">
<h2 class="title">News</h2>
<p><a href=https://github.com/xitrum-framework/xitrum/blob/master/CHANGELOG.rst>CHANGELOG</a></p>
<ul>
<li><a href="https://groups.google.com/g/xitrum-framework/c/MUPBSSJwPgs">Xitrum 3.30.1</a> <em>Jan 20 2021</em></li>
<li><a href="https://groups.google.com/g/xitrum-framework/c/-OpzPcO1-1M">Xitrum 3.30.0</a> <em>Jan 18 2021</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/h2txivF1Yts">Xitrum 3.28.18</a> <em>Sep 7 2019</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/6iBO9L-ywRc">Xitrum 3.28.17</a> <em>Jun 4 2019</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/DVBHlfxtywc">Xitrum 3.28.16</a> <em>Feb 18 2019</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/ymd1KZ7GxpA">Xitrum 3.28.15</a> <em>Dec 9 2018</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/H5U6M1Tfrkw">Xitrum 3.28.14</a> <em>Nov 3 2018</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/EIj7b0gI1-Y">Xitrum 3.28.13</a> <em>Oct 17 2018</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/iWfvPWvCb9M">Xitrum 3.28.12</a> <em>Oct 7 2018</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/LpfQQikZgp4">Xitrum 3.28.11</a> <em>Sep 2 2018</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/uJDnam_LYNw">Xitrum 3.28.10</a> <em>Jul 25 2018</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/lU9Jvl7I2jw">Xitrum 3.28.9</a> <em>May 25 2018</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/NRlEHxi5gyk">Xitrum 3.28.8</a> <em>Feb 27 2018</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/hzDGt2eAqIM">Xitrum 3.28.7</a> <em>Jan 24 2018</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/24_xRS-kDWg">Xitrum 3.28.6</a> <em>Nov 25 2017</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/75OqzrUT9gg">Xitrum 3.28.5</a> <em>Aug 25 2017</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/h_wVEyAFKyc">Xitrum 3.28.4</a> <em>May 25 2017</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/Px9mWezMuOs">Xitrum 3.28.3</a> <em>Mar 28 2017</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/B4zh4TZf_Ww">Xitrum 3.28.2</a> <em>Jan 12 2017</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/9db9LcOljow">Xitrum 3.28.1</a> <em>Oct 2 2016</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/QXbcAc-k1uk">Xitrum 3.28.0</a> <em>Aug 4 2016</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/T_Pf3unkpOY">Xitrum 3.27.0</a> <em>Jul 18 2016</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/9gkfeRELT3E">Xitrum 3.26.2</a> <em>Jun 22 2016</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/vscIfDyCTGs">Xitrum 3.26.1</a> <em>May 31 2016</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/6pXvOkUpmBY">Xitrum 3.26.0</a> <em>Jan 09 2016</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/GV2Xjc0LiV0">Xitrum 3.25.0</a> <em>Aug 14 2015</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/RHv1cgXQAHI">Xitrum 3.24.0</a> <em>May 24 2015</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/blr5QKR9z2Y">Xitrum 3.23</a> <em>Mar 14 2015</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/YWClyCoAfnU">Xitrum 3.22</a> <em>Jan 20 2015</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/Jzmxf9X1pAo">Xitrum 3.21</a> <em>Dec 18 2014</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/GOxo4rpFWEk">Xitrum 3.20</a> <em>Dec 12 2014</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/D-7gzo-QVsQ">Xitrum 3.19</a> <em>Nov 14 2014</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/9s6Vbenh1xE">Xitrum 3.18</a> <em>Aug 19 2014</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/fdf7Q06z4kU">Xitrum 3.17</a> <em>Aug 01 2014</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/r_Dtq1F4Ipg">Xitrum 3.16</a> <em>Jul 09 2014</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/sN10h-p785Y">Xitrum 3.15</a> <em>Jul 05 2014</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/5YALr8UXaAM">Xitrum 3.14</a> <em>Jun 16 2014</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/MXi4CCKiVD4">Xitrum 3.13</a> <em>May 23 2014</em></li>
<li><a href="https://groups.google.com/forum/#!topic/xitrum-framework/zW0ZlaTUf3o">Xitrum 2.15</a> <em>Dec 25 2013</em></li>
</ul>
</div>
</div>
<div class="clearfix"></div>
<div class="dark-panel">
<div class="span-7 prepend-1">
<h2 class="title">Xitrum on Github</h2>
<p><a class="reference external" href="https://github.com/xitrum-framework/">Xitrum and related projects source code</a></p>
</div>
<div class="span-7 prepend-1">
<h2 class="title">Project template</h2>
<p><a class="reference external" href="https://github.com/xitrum-framework/xitrum-new">Create a new project with ease</a></p>
</div>
<div class="span-7 prepend-1 last">
<h2 class="title">Demo projects</h2>
<ul>
<li>
<a class="reference external" href="https://github.com/xitrum-framework/xitrum-demos">Xitrum Demos</a>
</li>
<li><a class="reference external" href="https://github.com/xitrum-framework/xitrum-placeholder">Image Placeholder</a></li>
<li><a class="reference external" href="https://github.com/xitrum-framework/comy">Simple URL shortener</a></li>
<li><a class="reference external" href="https://github.com/xitrum-framework/xitrum-tictactoe">Tictactoe</a></li>
<li><a class="reference external" href="https://github.com/xitrum-framework/xitrum-multimodule-demo">Collecting routes from multiple modules (libs)</a></li>
</ul>
</div>
<div class="clearfix"></div>
</div>
</div> <!-- End of div.container -->
</body>
</html>