Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

renewal

  • Loading branch information...
commit 69aef1c566417d74722bdde9248714c35a580b86 1 parent 871c57f
@frsyuki frsyuki authored
Showing with 902 additions and 1,144 deletions.
  1. +426 −0 css/all.css
  2. +13 −0 css/yuibase.css
  3. BIN  favicon.ico
  4. BIN  images/alpha80black.png
  5. BIN  images/arrow1.png
  6. BIN  images/arrow2.png
  7. BIN  images/logo.png
  8. BIN  images/msgpack-json.png
  9. BIN  images/pinterest.png
  10. BIN  images/redis.png
  11. BIN  images/ribbon.png
  12. BIN  images/saltstack.png
  13. BIN  images/shadow1000.png
  14. BIN  images/shadow1000bottom.png
  15. BIN  images/source/alpha80black.psd
  16. BIN  images/source/arrow.psd
  17. BIN  images/source/favicon.psd
  18. BIN  images/source/shadow.psd
  19. BIN  images/splash.jpg
  20. BIN  images/td-icon.png
  21. +347 −467 index.html
  22. BIN  index/arrow.png
  23. BIN  index/headline1.png
  24. BIN  index/headline2.png
  25. BIN  index/icon-ng.png
  26. BIN  index/icon-ok.png
  27. +0 −154 index/jquery.js
  28. +0 −439 index/msgpack.css
  29. BIN  index/msgpack_logo.png
  30. +0 −27 index/prettify.css
  31. +0 −33 index/prettify.js
  32. BIN  index/speedtest.png
  33. +0 −8 index/yui/cssbase/base-min.css
  34. +0 −8 index/yui/cssfonts/fonts-min.css
  35. +0 −8 index/yui/cssreset/reset-min.css
  36. +33 −0 js/all.js
  37. +2 −0  js/prettify/lang-apollo.js
  38. +18 −0 js/prettify/lang-clj.js
  39. +2 −0  js/prettify/lang-css.js
  40. +1 −0  js/prettify/lang-go.js
  41. +2 −0  js/prettify/lang-hs.js
  42. +3 −0  js/prettify/lang-lisp.js
  43. +2 −0  js/prettify/lang-lua.js
  44. +2 −0  js/prettify/lang-ml.js
  45. +4 −0 js/prettify/lang-n.js
  46. +1 −0  js/prettify/lang-proto.js
  47. +2 −0  js/prettify/lang-scala.js
  48. +2 −0  js/prettify/lang-sql.js
  49. +1 −0  js/prettify/lang-tex.js
  50. +2 −0  js/prettify/lang-vb.js
  51. +3 −0  js/prettify/lang-vhdl.js
  52. +2 −0  js/prettify/lang-wiki.js
  53. +3 −0  js/prettify/lang-xq.js
  54. +2 −0  js/prettify/lang-yaml.js
  55. +1 −0  js/prettify/prettify.css
  56. +28 −0 js/prettify/prettify.js
View
426 css/all.css
@@ -0,0 +1,426 @@
+header, footer, section {
+ display:block;
+ margin:0;
+ padding:0;
+ border:0;
+}
+
+html {
+ background-color:#454545;
+}
+
+/*
+ * Body width
+ */
+#header > *, #desc > *,
+#background > *, #footer > * {
+ margin:0 auto;
+ width:1000px;
+}
+
+/*
+ * Header width
+ */
+#header {
+ background-color:#150e4f;
+ height:100px;
+}
+#logo {
+ margin:20px 0 0 0;
+ float:left;
+ text-indent:-9999px;
+ overflow:hidden;
+ background:url(../images/logo.png) no-repeat;
+ width:421px;
+ height:69px;
+}
+#topnav {
+ text-align:right;
+ padding-top:60px;
+}
+#topnav ul {
+ margin:0;
+ padding:0;
+}
+#topnav li {
+ list-style-type:none;
+ font-size:16px;
+ border-left:1px solid #5555aa;
+ display:inline;
+ display:inline-block;
+}
+#topnav li a {
+ display:block;
+ padding:2px 30px 2px 30px;
+ color:#cfcfff;
+ text-decoration:none;
+}
+#topnav li a:hover {
+ color:#ffffff;
+ text-decoration:underline;
+}
+#header:after {
+ content:'';
+ display:block;
+ clear:both;
+}
+
+/*
+ * Description
+ */
+#desc {
+ height:400px;
+ border-top:2px solid #463180;
+ border-bottom:1px solid #260cab;
+ /*background-color:#17181c;*/
+ background:url(../images/splash.jpg) 50% 0 no-repeat #000000;
+ padding-bottom:10px;
+}
+#descbody {
+ padding-top:20px;
+}
+#descimg {
+ display:block;
+ float:right;
+ background:url(../images/alpha80black.png) repeat;
+ margin:40px 0px 0 0;
+ padding:15px 10px 15px 10px;
+}
+#desctext {
+ width:510px;
+ float:left;
+ color:#dddddd;
+ background:url(../images/alpha80black.png) repeat;
+ padding:10px 20px 10px 20px;
+}
+h2 {
+ font-size:29px;
+ letter-spacing:1px;
+ font-family:Myriad Web Pro, Arial, Helvetica, sans-serif;
+ color:#ffffff;
+ margin:0 0 10px 0;
+}
+#desctext p {
+ font-size:100%;
+ line-height:160%;
+ text-align:justify;
+}
+#desctext pre {
+ font-weight:normal;
+ font-size:105%;
+ /*letter-spacing:-1px;*/
+ letter-spacing:1px;
+ line-height:170%;
+ padding:10px 10px 10px 10px;
+ margin:18px 0 15px 0;
+ font-family:Monaco, Courier, sans-serif;
+ /*border:1px solid #005181;*/
+ border:1px solid #463180;
+ background-color:#262626;
+ color:#ffffff;
+}
+#desctext a {
+ color:#ffffff;
+ text-decoration:underline;
+}
+#desctext a:hover {
+ color:#ffffff;
+ text-decoration:none;
+}
+#descbody:after {
+ content:'';
+ display:block;
+ clear:both;
+}
+
+/*
+ * Content background
+ */
+#background {
+ border-top:1px solid #252550; /* shadow */
+ background:url(../images/shadow1000.png) 50% 0 repeat-y;
+}
+
+/*
+ * Content
+ */
+#content {
+ margin-top:-1px;
+ border-top:1px solid #454590; /* shadow overwrite */
+ padding-bottom:20px;
+ background-color:#ffffff;
+ width:1001px;
+}
+
+h3 {
+ color:#ffffff;
+ background:black;
+ width:250px;
+ padding:8px 0 0 8px;
+ margin:1.8em 0 0.8em 0;
+ height:35px;
+ font-size:16px;
+ background:url(../images/ribbon.png) 100% 0 no-repeat;
+ font-weight:normal;
+ letter-spacing:1px;
+ font-family:Myriad Web Pro, Arial, sans-serif;
+}
+
+/* testimonial */
+/*
+ * 1000px =
+ * tmleft/tmright: width:29 * 2 +
+ * tm: (width:290 + padding:12 + padding:12) * 3
+ */
+.tmset {
+ padding-top:10px;
+ margin-bottom:20px;
+ height:220px;
+}
+.tmleft, .tmright {
+ width:29px;
+ height:100%;
+ color:#999999;
+ display:block;
+}
+.tmleft:hover, .tmright:hover {
+ background-color:#eeeeee;
+}
+.tmleft {
+ float:left;
+ background:url(../images/arrow1.png) 8px 80px no-repeat;
+}
+.tmright {
+ float:right;
+ background:url(../images/arrow2.png) 8px 80px no-repeat;
+}
+.tm {
+ float:left;
+ width:290px;
+ padding:0 12px;
+}
+.tmlogo {
+ display:block;
+ height:65px;
+}
+.tmlogo img {
+ display:block;
+ margin:0 auto;
+}
+.tmtext {
+ font-size:100%;
+ line-height:150%;
+ /*text-align:justify;*/
+}
+.tmset:after {
+ content:'';
+ display:block;
+ clear:both;
+}
+.tmauthor {
+ font-family:verdana;
+}
+.tmcontribute {
+ float:right;
+ width:334px; /* .tm:width:290 + .tm:padding:12*2 + 20px */
+ margin-top:12px;
+ font-size:95%;
+}
+.tmcontribute:after {
+ content:'';
+ display:block;
+ clear:both;
+}
+
+/* quick starts */
+.qsset {
+ height:20em;
+ padding:20px;
+ /*background-color:#383838;*/
+ background-color:#444444;
+ border-bottom:1px solid #111;
+}
+.qsholder {
+ float:right;
+ width:655px;
+ padding:1.5em 18px 0em 18px;
+ height:18.5em;
+ background-color:#ffffff;
+ border:1px solid #999999;
+ overflow:auto;
+ /*color:#bbbbbb;*/
+}
+.qs {
+ display:none;
+}
+
+.qsholder h4 {
+ margin-bottom:10px;
+ font-size:19px;
+ color:#000000;
+
+ display:none;
+}
+.qsholder pre {
+ font-size:100%;
+ padding:8px 15px 8px 15px;
+ margin:0 0 0.8em 0;
+ font-family:Monaco, Courier, sans-serif;
+ border:1px solid #666;
+ /*background-color:#262626;*/
+ background-color:#faffff;
+ font-weight:bold;
+ line-height:140%;
+ border:1px solid #005181;
+}
+.qsholder p {
+ margin-bottom:0.4em;
+}
+
+.hlist {
+ margin:0 0 0.8em 0;
+ padding:0;
+}
+.hlist li {
+ list-style-type:none;
+ float:left;
+ margin-right:3em;
+}
+.hlist:after {
+ content:'';
+ display:block;
+ clear:both;
+}
+.qslist {
+ float:left;
+ width:260px;
+ margin:0;
+}
+.qslist li {
+ list-style-type:none;
+ text-align:center;
+ float:left;
+ margin-right:8px;
+ margin-bottom:7px;
+}
+.qslist a {
+ display:block;
+ padding:6px 20px 5px 20px;
+ font-size:13px;
+ color:#ffffff;
+ border:1px solid #777;
+ -webkit-border-radius:5px;
+ -moz-border-radius:5px;
+
+ background:#151515;
+ color:#aaaaaa;
+
+ /* http://gradients.glrzad.com/ */
+ background-image: linear-gradient(bottom, rgb(0,0,0) 80%, rgb(99,99,99) 100%);
+ background-image: -o-linear-gradient(bottom, rgb(0,0,0) 80%, rgb(99,99,99) 100%);
+ background-image: -moz-linear-gradient(bottom, rgb(0,0,0) 80%, rgb(99,99,99) 100%);
+ background-image: -webkit-linear-gradient(bottom, rgb(0,0,0) 80%, rgb(99,99,99) 100%);
+ background-image: -ms-linear-gradient(bottom, rgb(0,0,0) 80%, rgb(99,99,99) 100%);
+
+ background-image: -webkit-gradient(linear, left bottom, left top,
+ color-stop(0.8, rgb(0,0,0)),
+ color-stop(1, rgb(99,99,99))
+ );
+ cursor:pointer;
+}
+.qslist a:hover {
+ color:#ffffff;
+ text-decoration:underline;
+}
+.qslist a.selected {
+ cursor:default;
+ background:#900020;
+ border:1px solid #c04444;
+ color:#ffffff;
+}
+.qslist a.selected:hover {
+ text-decoration:none;
+}
+
+.qsset:after {
+ content:'';
+ display:block;
+ clear:both;
+}
+
+.paragraphs > * {
+ margin:0 20px 0 20px;
+}
+
+a {
+ color:#0000ee;
+ text-decoration:none;
+}
+a:hover {
+ text-decoration:underline;
+}
+
+#content .paragraphs {
+ line-height:140%;
+}
+
+#content .paragraphs h4 {
+ margin-top:1.5em;
+ margin-bottom:0.5em;
+}
+#content .paragraphs h4:before {
+ content: '>';
+ font-weight:bold;
+ font-size:11px;
+ letter-spacing:-3px;
+ margin:0 8px 0 -11px;
+}
+
+#content .paragraphs p {
+ margin-bottom:0.4em;
+}
+
+/*
+ * Footer
+ */
+#footer {
+ background:url(../images/shadow1000bottom.png) 50% 0 no-repeat;
+ padding-bottom:50px;
+}
+
+#footerbody {
+ color:#999;
+ font-size:100%;
+}
+#social {
+ padding-top:25px;
+ margin-bottom:15px;
+}
+#social .fb-like {
+ top:-3px;
+ margin-left:-14px;
+}
+
+#thanks {
+ color:#aaaaaa;
+}
+
+#sponsor {
+ float:right;
+ width:300px;
+ text-align:right;
+ margin-top:-7px;
+}
+#sponsor a {
+ color:#aaaaaa;
+ vertical-align:bottom;
+ text-decoration:none;
+}
+#sponsor a:hover {
+ color:#aaaaaa;
+ text-decoration:underline;
+}
+#sponsor img {
+ margin-left:3px;
+}
+
View
13 css/yuibase.css
@@ -0,0 +1,13 @@
+/*
+Copyright (c) 2009, Yahoo! Inc. All rights reserved.
+Code licensed under the BSD License:
+http://developer.yahoo.net/yui/license.txt
+version: 3.0.0
+build: 1549
+*/
+/* cssreset/reset-min.css */
+html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;}
+/* cssbase/base-min.css */
+h1{font-size:138.5%;}h2{font-size:123.1%;}h3{font-size:108%;}h1,h2,h3{margin:1em 0;}h1,h2,h3,h4,h5,h6,strong{font-weight:bold;}abbr,acronym{border-bottom:1px dotted #000;cursor:help;}em{font-style:italic;}blockquote,ul,ol,dl{margin:1em;}ol,ul,dl{margin-left:2em;}ol li{list-style:decimal outside;}ul li{list-style:disc outside;}dl dd{margin-left:1em;}th,td{border:1px solid #000;padding:.5em;}th{font-weight:bold;text-align:center;}caption{margin-bottom:.5em;text-align:center;}p,fieldset,table,pre{margin-bottom:1em;}input[type=text],input[type=password],textarea{width:12.25em;*width:11.9em;}
+/* cssfonts/fonts-min.css */
+body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}select,input,button,textarea{font:99% arial,helvetica,clean,sans-serif;}table{font-size:inherit;font:100%;}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;}
View
BIN  favicon.ico
Binary file not shown
View
BIN  images/alpha80black.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/arrow1.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/arrow2.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/logo.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/msgpack-json.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/pinterest.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/redis.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/ribbon.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/saltstack.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/shadow1000.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/shadow1000bottom.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/source/alpha80black.psd
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/source/arrow.psd
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/source/favicon.psd
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/source/shadow.psd
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/splash.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  images/td-icon.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
814 index.html
@@ -1,473 +1,353 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
<head>
- <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
- <meta http-equiv="content-script-type" content="text/javascript" />
- <meta http-equiv="content-style-type" content="text/css" />
-
- <title>The MessagePack Project</title>
- <meta name="description" content="MessagePack Web Site" />
- <meta name="keywords" content="MessagePack, msgpack, serialize, deserialize, JSON, Protocol Buffers, BERT, Thrift" />
-
- <script src="index/prettify.js" type="text/javascript"></script>
- <link href="index/prettify.css" rel="stylesheet" type="text/css" />
-
- <link rel="stylesheet" type="text/css" href="index/yui/cssreset/reset-min.css" />
- <link rel="stylesheet" type="text/css" href="index/yui/cssfonts/fonts-min.css" />
- <link rel="stylesheet" type="text/css" href="index/yui/cssbase/base-min.css" />
- <link rel="stylesheet" type="text/css" href="index/msgpack.css" />
-
- <script type="text/javascript">
- var _gaq = _gaq || [];
- _gaq.push(['_setAccount', 'UA-17125377-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>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="keywords" content="MessagePack, msgpack, JSON, Binary JSON, Serializer, Serialization" />
+ <!--<meta name="description" content="" />-->
+ <link href='favicon.ico' rel='icon' type='image/x-icon'/>
+
+ <title>MessagePack: It's like JSON. but fast and small.</title>
+
+ <!--[if lt IE 9]><script type="text/javascript" src="http://html5shim.googlecode.com/svn/trunk/html5.js" ></script><![endif]-->
+ <link media="all" rel="stylesheet" type="text/css" href="css/yuibase.css" />
+ <link media="all" rel="stylesheet" type="text/css" href="js/prettify/prettify.css" />
+ <link media="all" rel="stylesheet" type="text/css" href="css/all.css" />
+ <script type="text/javascript" src="js/all.js" ></script>
+ <script type="text/javascript" src="js/prettify/prettify.js" ></script>
+
+ <script type="text/javascript">
+ var _gaq = _gaq || [];
+ _gaq.push(['_setAccount', 'UA-17125377-1']);
+ _gaq.push(['_setDomainName', 'msgpack.org']);
+ _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 onload="prettyPrint()">
- <div id="header" class="container">
- <h1>MessagePack</h1>
- <p id="summary">Extremely efficient object serialization library for cross-language communication.<br />It's like JSON, but very fast and small.</p>
- </div>
-
- <div id="navi" class="container">
- <ul id="navi_links">
- <li>
- <a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart">
- <span class="navi_title">Getting Started</span>
- <span class="navi_desc">Install and Try it Now</span>
- </a>
- </li>
- <li style="width:140px;">
- <a href="http://wiki.msgpack.org/display/MSGPACK/Home">
- <span class="navi_title">Wiki</span>
- <span class="navi_desc">Learn more</span>
- </a>
- </li>
- <li style="width:180px;">
- <a href="http://jira.msgpack.org/browse/MSGPACK">
- <span class="navi_title">Issues</span>
- <span class="navi_desc">Issues and progress</span>
- </a>
- </li>
- <li style="width:180px;">
- <a href="http://github.com/msgpack">
- <span class="navi_title">Source</span>
- <span class="navi_desc">Repository at Github</span>
- </a>
- </li>
- <li style="width:180px;">
- <!--http://twitter.com/search?q=%23msgpack-->
- <a href="http://twitter.com/search/MessagePack%20OR%20msgpack">
- <span class="navi_title">#msgpack</span>
- <span class="navi_desc">Find on Twitter</span>
- </a>
- </li>
- </ul>
-
- <div id="social" style="overflow:hidden;">
- <div style="width:50px;height:43px;overflow:hidden;">
- <script type="text/javascript">/*tweetmeme_style = 'compact';*/</script>
- <script type="text/javascript" src="http://tweetmeme.com/i/scripts/button.js"></script>
- </div>
-
- <!--<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fmsgapck.org%2F&amp;layout=button_count&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:21px;" allowTransparency="true"></iframe>-->
- <iframe src="http://www.facebook.com/plugins/likebox.php?id=119810658044417&amp;width=110&amp;connections=0&amp;stream=false&amp;header=false&amp;height=40" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; height:40px; width:190px; margin: -9px 0 0 -60px;"></iframe>
- </div>
- </div>
-
- <h2 id="Abstruct">What's MessagePack?</h2>
-
- <div id="welcome" class="container">
-
- <div id="welcome_description">
- <h3>Fast and Compact Serialization</h3>
- <p>MessagePack is a binary-based efficient object serialization library. It enables to exchange structured objects between many languages like JSON. But unlike JSON, it is very fast and small.</p>
- <p>Typical small integer (like flags or error code) is saved only in 1 byte, and typical short string only needs 1 byte except the length of the string itself. [1,2,3] (3 elements array) is serialized in 4 bytes using MessagePack as follows:</p>
- <pre class="prettyprint">&gt; require 'msgpack'
+<body onload="prettyPrint();changeQuickStart('qs-ruby',document.getElementById('quickstart-default'));">
+
+<!-- Facebook like button { -->
+<div id="fb-root"></div>
+<script>(function(d, s, id) {
+ var js, fjs = d.getElementsByTagName(s)[0];
+ if (d.getElementById(id)) return;
+ js = d.createElement(s); js.id = id;
+ js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
+ fjs.parentNode.insertBefore(js, fjs);
+}(document, 'script', 'facebook-jssdk'));</script>
+<!-- } Facebook like button -->
+
+ <header id="header">
+ <div id="headerwrap">
+ <h1 id="logo"><a href="/">MessagePack</a></h1>
+ <nav id="topnav">
+ <ul>
+ <li><a href="https://github.com/msgpack">GitHub</a></li>
+ <li><a href="http://wiki.msgpack.org/display/MSGPACK/Home">Wiki</a></li>
+ <li><a href="http://twitter.com/search/MessagePack%20OR%20msgpack">#msgpack</a></li>
+ <li><a href="http://wiki.msgpack.org/display/MSGPACK/Format+specification">Spec</a></li>
+ </ul>
+ </nav>
+ </div>
+ </header>
+
+ <div id="desc">
+ <div id="descbody">
+ <img id="descimg" width="421" height="251" src="images/msgpack-json.png"/>
+ <div id="desctext">
+ <h2>It's like JSON. but fast and small.</h2>
+ <p>MessagePack is an efficient binary serialization format. It lets you exchange data among multiple languages like JSON but it's faster and smaller. For example, small integers (like flags or error code) are encoded into a single byte, and typical short strings only require an extra byte in addition to the strings themselves.</p>
+ <p>If you ever wished to use JSON for convenience (storing an image with metadata) but could not for technical reasons (encoding, size, speed...), MessagePack is a perfect replacement.</p>
+ <pre>&gt; require "msgpack" # gem install msgpack
&gt; msg = [1,2,3].to_msgpack #=&gt; "\x93\x01\x02\x03"
&gt; MessagePack.unpack(msg) #=&gt; [1,2,3]</pre>
-
- <h3>Scalable RPC</h3>
- <p>MessagePack-RPC is cross-language RPC library for client, server and cluster applications. Because it releases you from complicated network programming completely and provides well-designed API, you can easily implement advanced network applications with MessagePack-RPC.</p>
- <!--<p>It is built on top of event-driven I/O architecture, and supports synchronous, asynchronous and callback-style RPC with multiple servers. Connection pooling is also supported. C++ and Java implementations are fully multithreaded, so the servers implemented on top of MessagePack-RPC automatically becomes scalable enough to serve thousands of clients.</p>-->
- <pre class="prettyprint">require 'msgpack/rpc'
-class MyHandler
- def add(x,y) return x+y end
-end
-svr = MessagePack::RPC::Server.new
-svr.listen('0.0.0.0', 18800, MyHandler.new)
-svr.run
-</pre>
- <pre class="prettyprint">require 'msgpack/rpc'
-c = MessagePack::RPC::Client.new('127.0.0.1',18800)
-result = c.call(:add, 1, 2) #=&gt; 3</pre>
-
- <p>
- Information of these related projects are available from: <a href="http://www.json.org/">JSON</a>, <a href="http://code.google.com/p/protobuf/">Protocol Buffers</a>, <a href="http://incubator.apache.org/thrift/">Thrift</a>, <a href="http://avro.apache.org/">Avro</a>.
- </p>
- </div>
-
- <div id="welcome_figure">
- <h3>Serialization + Deserialization Speed Test</h3>
- <img id="speedtest" src="index/speedtest.png" width="440" height="225" alt="MessagePack Serialization + Deserialization Speed Test" />
- <p class="caption">In this test (<a href="http://msgpack.org/releases/benchmark/msgpack-protobuf-json-speed-test.tar.gz">source code</a>), we measured the time required to serialize and deserialize 200,000 objects each consisting of three integers and a 512-byte blob (ex. an image with metadata).
- We chose this particular test case to highlight the power of "zero-copy" in MesspagePack's C++ implementation, which is most relevant for blobs. (<a href="http://blog.treasure-data.com/post/12232702451/messagepack-the-missing-serializer">details</a>)</p>
-
- <h3>RPC Feature Comparision</h3>
- <table id="compare" summary="RPC Feature Comparision">
- <colgroup>
- <col class="header" />
- <col span="1" class="main" />
- <col span="2" class="sub" />
- </colgroup>
- <thead>
- <tr>
- <th></th>
- <th>MessagePack-RPC</th>
- <th>Thrift</th>
- <th>Avro</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <th><a href="http://wiki.msgpack.org/display/MSGPACK/Design+of+RPC#DesignofRPC-AsynchronousRPC">Asynchronous RPC</a></th>
- <td><img alt="OK" src="index/icon-ok.png" width="18" height="18" /></td>
- <td><img alt="OK" src="index/icon-ok.png" width="18" height="18" /></td>
- <td><img alt="OK" src="index/icon-ng.png" width="18" height="18" /></td>
- </tr>
- <tr>
- <th><a href="http://wiki.msgpack.org/display/MSGPACK/Design+of+RPC#DesignofRPC-ParallelPipelining">Parallel Pipelining</a></th>
- <td><img alt="OK" src="index/icon-ok.png" width="18" height="18" /></td>
- <td><img alt="NG" src="index/icon-ng.png" width="18" height="18" /></td>
- <td><img alt="NG" src="index/icon-ng.png" width="18" height="18" /></td>
- </tr>
- <tr>
- <th><a href="http://wiki.msgpack.org/display/MSGPACK/Design+of+RPC#DesignofRPC-IDLSupport">Thrift-like IDL</a></th>
- <td><img alt="OK" src="index/icon-ok.png" width="18" height="18" /></td>
- <td><img alt="OK" src="index/icon-ok.png" width="18" height="18" /></td>
- <td><img alt="NG" src="index/icon-ng.png" width="18" height="18" /></td>
- </tr>
- <tr>
- <th><a href="http://wiki.msgpack.org/display/MSGPACK/Design+of+RPC#DesignofRPC-DynamicTyping">Dynamic Typing</a></th>
- <td><img alt="OK" src="index/icon-ok.png" width="18" height="18" /></td>
- <td><img alt="NG" src="index/icon-ng.png" width="18" height="18" /></td>
- <td><img alt="OK" src="index/icon-ok.png" width="18" height="18" /></td>
- </tr>
- <tr>
- <th><a href="http://wiki.msgpack.org/display/MSGPACK/Design+of+RPC#DesignofRPC-ConnectionPooling">Connection pooling</a></th>
- <td><img alt="OK" src="index/icon-ok.png" width="18" height="18" /></td>
- <td><img alt="NG" src="index/icon-ng.png" width="18" height="18" /></td>
- <td><img alt="NG" src="index/icon-ng.png" width="18" height="18" /></td>
- </tr>
- <tr>
- <th><a href="http://wiki.msgpack.org/display/MSGPACK/Design+of+RPC#DesignofRPC-DelayedReturn">Delayed return</a></th>
- <td><img alt="OK" src="index/icon-ok.png" width="18" height="18" /></td>
- <td><img alt="NG" src="index/icon-ng.png" width="18" height="18" /></td>
- <td><img alt="NG" src="index/icon-ng.png" width="18" height="18" /></td>
- </tr>
- <tr>
- <th><a href="http://wiki.msgpack.org/display/MSGPACK/Design+of+RPC#DesignofRPC-EventdrivenI%2FO">Event-driven I/O</a></th>
- <td><img alt="OK" src="index/icon-ok.png" width="18" height="18" /></td>
- <td><img alt="NG" src="index/icon-ng.png" width="18" height="18" /></td>
- <td><img alt="NG" src="index/icon-ng.png" width="18" height="18" /></td>
- </tr>
- </tbody>
- </table>
- </div>
- </div>
-
- <div id="getstart" class="container">
- <h2 id="GettingStarted">Getting Started</h2>
-
- <div class="box3" style="height:14em;">
- <h3>Ruby</h3>
- <p class="getstart_links">
- <a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Ruby">Quick Start</a>
- <span>Reference:</span>
- <a href="http://msgpack.org/rpc/rdoc/current/MessagePack/RPC.html">RPC</a>
- <a href="http://msgpack.org/rdoc/current/MessagePack.html">Serialization</a>
- </p>
- <pre>&gt; gem install msgpack
-&gt; gem install msgpack-rpc</pre>
- <!--<p>Ruby implementation supports <a href="http://redmine.msgpack.org/projects/msgpack/wiki/FormatDesign">zero-copy</a> facility.</p>-->
- </div>
-
- <div class="box3" style="height:14em;">
- <h3>Python</h3>
- <p class="getstart_links">
- <a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Python">Quick Start</a>
- <!--
- <span>Reference:</span>
- <a href="">RPC</a>
- <a href="">Serialization</a>
- -->
- </p>
- <pre>&gt; easy_install msgpack-python</pre>
- <p>More details for the package is available at the <a href="http://pypi.python.org/pypi/msgpack-python/">PyPI page</a>.</p>
- </div>
-
- <div class="box3" style="height:14em;">
- <h3>Perl</h3>
- <p class="getstart_links">
- <!--<a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Perl">Quick Start</a>-->
- <span style="margin-left:0;">Reference:</span>
- <a href="http://search.cpan.org/~tokuhirom/AnyEvent-MPRPC/">RPC</a>
- <a href="http://search.cpan.org/~tokuhirom/Data-MessagePack/">Serialization</a>
- </p>
- <pre>&gt; cpan Data::MessagePack
-&gt; cpan AnyEvent::MPRPC</pre>
- </div>
-
- <div class="box3" style="height:16em;">
- <h3>C/C++</h3>
- <p class="getstart_links">
- <a href="http://wiki.msgpack.org/pages/viewpage.action?pageId=1081387">Quick Start</a>
- <!--
- <span>Reference:</span>
- <a href="">RPC</a>
- <a href="">Serialization</a>
- -->
- </p>
- <pre>port install msgpack (<a href="http://www.macports.org/">MacPorts</a>)
-brew install msgpack (<a href="http://mxcl.github.com/homebrew/">Homebrew</a>)</pre>
- <p>Download <a href="http://msgpack.org/releases/cpp/msgpack-0.5.7.tar.gz">msgpack-0.5.7.tar.gz</a> and build it.
- RPC for C++ is at <a href="http://msgpack.org/releases/cpp/msgpack-rpc-0.3.1.tar.gz">msgpack-rpc-0.3.1.tar.gz</a>.
- <!--C/C++ implementation supports <a href="http://redmine.msgpack.org/projects/msgpack/wiki/FormatDesign">zero-copy</a> facility.</p>-->
- <!--
- It supports <strong>zero-copy</strong> facility.</p>
- -->
- </div>
-
- <div class="box3" style="height:16em;">
- <h3>Java</h3>
- <p class="getstart_links">
- <a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Java">Quick Start</a>
- <span>Reference:</span>
- <a href="http://msgpack.org/rpc/javadoc/current/">RPC</a>
- <a href="http://msgpack.org/javadoc/current/">Serialization</a>
- </p>
- <p>Maven2 repository is located <a href="http://msgpack.org/maven2/">here</a>. See <a href="/javadoc/current/">javadoc</a> for actual APIs.<!-- <a href="http://redmine.msgpack.org/projects/msgpack/wiki/QuickStartIDL">IDL</a> may be greatly useful with Java.</p>-->
- <p>Source code is available from <a href="http://github.com/msgpack/msgpack/tree/master/java/">here</a>, and <a href="http://github.com/msgpack/msgpack/blob/master/java/src/test/java/org/msgpack/TestMessagePackStaticMethods.java">test cases</a> will give you a sample usage.</p>
- </div>
-
- <div class="box3" style="height:16em;">
- <h3>Haskell</h3>
- <p class="getstart_links">
- <a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Haskell">Quick Start</a>
- <!--
- <span>Reference:</span>
- <a href="">RPC</a>
- <a href="">Serialization</a>
- -->
- </p>
- <pre>&gt; cabal install msgpack
-&gt; cabal install msgpack-rpc</pre>
- <p>
- See hackageDB page (<a href="http://hackage.haskell.org/package/msgpack">msgpack</a>, <a href="http://hackage.haskell.org/package/msgpack-rpc">msgpack-rpc</a>) for details.
- </p>
- </div>
-
- <div class="box3" style="height:10em;">
- <h3>JavaScript</h3>
- <p class="getstart_links">
- <a href="https://github.com/msgpack/msgpack-javascript">Quick Start</a>
- </p>
- <p>
- Download <a href="https://raw.github.com/msgpack/msgpack-javascript/master/msgpack.js">msgpack.js</a> from <a href="https://github.com/msgpack/msgpack-javascript">GitHub</a>.<br />
- Licensed under MIT license.
- </p>
- </div>
-
- <div class="box3" style="height:10em;">
- <h3>D</h3>
- <p class="getstart_links">
- <a href="https://github.com/msgpack/msgpack-d">Quick Start</a>
- </p>
- <p>
- See example directory of repository for more details.<br />
- Licensed under Boost license.
- </p>
- </div>
-
- <div class="box3" style="height:10em;">
- <h3>C#</h3>
- <p class="getstart_links">
- <a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+C+Sharp">Quick Start</a>
- </p>
- </div>
-
- <div class="box3" style="height:6em;">
- <h3>Erlang</h3>
- <p class="getstart_links">
- <a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Erlang">Quick Start</a>
- </p>
- </div>
-
- <div class="box3" style="height:6em;">
- <h3>Scala</h3>
- <p class="getstart_links">
- <a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Scala">Quick Start</a>
- </p>
- </div>
-
- <div class="box3" style="height:6em;">
- <h3>Go</h3>
- <p class="getstart_links">
- <a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Go">Quick Start</a>
- </p>
- </div>
-
- <div class="box3" style="height:6em;">
- <h3>Lua</h3>
- <p class="getstart_links">
- <a href="https://github.com/nobu-k/mplua">Quick Start</a>
- </p>
- </div>
-
- <div class="box3" style="height:6em;">
- <h3>Node.JS</h3>
- <p class="getstart_links">
- <a href="https://github.com/pgriess/node-msgpack">Quick Start</a>
- </p>
- </div>
-
- <div class="box3" style="height:6em;">
- <h3>OCaml</h3>
- <p class="getstart_links">
- <a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+OCaml">Quick Start</a>
- </p>
- </div>
-
- <div class="box3" style="height:7em;">
- <h3>PHP</h3>
- <p class="getstart_links">
- <a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+PHP">Quick Start</a>
- </p>
- </div>
-
- <!--
- <p id="getstart_more_link"><a href="http://wiki.msgpack.org/display/MSGPACK/Home">And more...</a></p>
- <p id="getstart_more_link"><a href="javascript:void(0)" onclick="$('#getstart_more_link').slideUp(300); $('#getstart_more').slideDown(300); return false;">And more...</a></p>
- -->
- </div>
-
- <div id="more" class="container">
- <h2 id="LearnMore">Learn More</h2>
- <div id="doctoc" class="clearfix">
- <div class="box3">
- <h3><a href="http://wiki.msgpack.org/display/MSGPACK/Design+of+Serialization">Serialize Design</a></h3>
- <p>More details about design of MessagePack-RPC.</p>
- </div>
-
- <div class="box3">
- <h3><a href="http://wiki.msgpack.org/display/MSGPACK/Design+of+RPC">RPC Design</a></h3>
- <p>More details about design of MessagePack.</p>
- </div>
-
- <div class="box3">
- <h3><a href="http://wiki.msgpack.org/display/MSGPACK/ArticlesAndPresentations">Articles and Presentations</a></h3>
- <p>Articles and slides about the designs and comparisons.</p>
- </div>
-
- <div class="box3">
- <h3><a href="http://wiki.msgpack.org/display/MSGPACK/Format+specification">Serialize Spec</a></h3>
- <p>MessagePack format specification.</p>
- </div>
-
- <div class="box3">
- <h3><a href="http://wiki.msgpack.org/display/MSGPACK/RPC+specification">RPC Spec</a></h3>
- <p>MessagePack-RPC protocol specification.</p>
- </div>
-
- <!--
- <div class="box3">
- <h3><a href="http://redmine.msgpack.org/projects/msgpack/wiki/QuickStartIDL">IDL Quick Start</a></h3>
- <p>Start MessagePack-RPC Interface Definition Language.</p>
- </div>
- -->
- </div>
-
- <div class="box2l" style="height:26em;">
- <!--<h3><a href="http://redmine.msgpack.org/projects/msgpack/wiki/MailingLists">Mailing Lists</a></h3>-->
- <h3>Mailing Lists</h3>
- <p>If you use MessagePack, please subscribe to the MessagePack mailing list. If you'd like to contribute to MessagePack, please subscribe to the MessagePack developers mailing list.</p>
-
- <div id="groups">
- <hr />
- <table border="0" style="background-color: #fff; padding: 5px;" cellspacing="0">
- <tr><td>
- <img src="http://groups.google.com/intl/en/images/logos/groups_logo_sm.gif" height="30" width="140" alt="Google Groups" />
- </td></tr>
- <tr><td style="padding-left: 5px">
- <b>Subscribe to MessagePack</b>
- </td></tr>
- <form action="http://groups.google.com/group/msgpack/boxsubscribe">
- <tr><td style="padding-left: 5px;">
- Email: <input type="text" name="email" />
- <input type="submit" name="sub" value="Subscribe" />
- </td></tr>
- </form>
- <tr><td align="right">
- <a href="http://groups.google.com/group/msgpack">Visit this group</a>
- </td></tr>
- </table>
-
- <hr />
-
- <table border="0" style="background-color: #fff; padding: 5px;" cellspacing="0">
- <tr><td>
- <img src="http://groups.google.com/intl/en/images/logos/groups_logo_sm.gif" height="30" width="140" alt="Google Groups" />
- </td></tr>
- <tr><td style="padding-left: 5px">
- <b>Subscribe to MessagePack Developers</b>
- </td></tr>
- <form action="http://groups.google.com/group/msgpack-dev/boxsubscribe">
- <tr><td style="padding-left: 5px;">
- Email: <input type="text" name="email" />
- <input type="submit" name="sub" value="Subscribe" />
- </td></tr>
- </form>
- <tr><td align="right">
- <a href="http://groups.google.com/group/msgpack-dev">Visit this group</a>
- </td></tr>
- </table>
- </div>
-
- </div>
-
- <div class="box2l" style="height:7.5em;">
- <!--<h3><a href="http://redmine.msgpack.org/projects/msgpack/wiki/IRC">Chat</a></h3>-->
- <h3>Chat</h3>
- <p>Many of the MessagePack developers and community members hang out in the <strong>#msgpack</strong> channel on <a href="http://freenode.net/">irc.freenode.net</a>. If you are new to IRC and don't have a client, you can use a <a href="http://webchat.freenode.net/?channels=#msgpack">web-based client</a>.</p>
- </div>
-
- <div class="box2l" style="height:6em;">
- <h3><a href="http://jira.msgpack.org/">Issues</a></h3>
- <p>Issues are managed on <a href="http://jira.msgpack.org/browse/MSGPACK">JIRA</a>. Note that you need to create an account on the <a href="http://jira.msgpack.org/secure/Signup!default.jspa">registration page</a> to add issues.</p>
- </div>
-
- <div class="box2l" style="height:4em;">
- <h3>Sources</h3>
- <p>Sources are located at github. Send pull requests to <a href="http://github.com/msgpack">msgpack account</a>.</p>
- <ul>
- <li><a href="http://github.com/msgpack/msgpack">MessagePack repository at github</a></li>
- <li><a href="http://github.com/msgpack/msgpack-rpc">MessagePack-RPC repository at github</a></li>
- </ul>
- </div>
- </div>
-
- <div id="footer">
- <div class="container">
- <div id="footerlogo"><a href="http://sourceforge.net/projects/msgpack"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=289834&amp;type=13" width="120" height="30" alt="Get MessagePack at SourceForge.net. Fast, secure and Free Open Source software downloads" /></a></div>
- <p>Copyright &copy; 2010 FURUHASHI Sadayuki. Licensed under the Apache License, Version 2.0.</p>
- </div>
- </div>
+ <p>...and <a href="#crosslang">many other languages</a></p>
+ </div>
+ </div>
+ </div>
+
+ <div id="background">
+ <div id="content">
+ <h3>Happy Hackers :-)</h3>
+ <div class="tmset">
+ <a class="tmleft"></a>
+
+ <div class="tm">
+ <a class="tmlogo" href="http://redis.io/"><img src="images/redis.png" alt="Redis" width="150" height="50" /></a>
+ <p class="tmtext">"Redis scripting has support for MessagePack because it is a fast and compact serialization format with a simple to implement specification. I liked it so much that I implemented a MessagePack C extension for Lua just to include it into Redis."</p>
+ <p class="tmauthor">Salvatore Sanfilippo, creator of Redis.</p>
+ </div>
+
+ <div class="tm">
+ <a class="tmlogo" href="http://pinterest.com/"><img src="images/pinterest.png" alt="Pinterest" width="197" height="50" /></a>
+ <p class="tmtext">"MessagePack has been simply invaluable to us. We use MessagePack + Memcache to cache many of our feeds on Pinterest. These feeds are compressed and very quick to unpack thanks to MessagePack while Memcache gives us fast atomic pushes."</p>
+ <p class="tmauthor">Marty Weiner, Software Engineer.</p>
+ </div>
+
+ <div class="tm">
+ <a class="tmlogo" href="http://saltstack.com/"><img src="images/saltstack.png" alt="Salt Stack" width="251" height="46" /></a>
+ <p class="tmtext">"I use MessagePack for all of the data serialization in Salt, it is fantastic! I tested quite a few serialization formats and MessagePack was dramatically faster and the data was always smaller. When I changed out pickles for MessagePack in Salt there was a speed increase of almost 3 fold across the board."</p>
+ <p class="tmauthor">Tom Hatch, author of Salt.</p>
+ </div>
+
+ <a class="tmright"></a>
+ </div>
+
+ <p class="tmcontribute">If you also use MessagePack, send us a pull-request.</p>
+
+ <h3 id="crosslang">Implementation projects</h3>
+ <div class="qsset">
+ <ul class="qslist">
+ <li><a onclick="changeQuickStart('qs-ruby',this)" id="quickstart-default">Ruby</a></li>
+ <li><a onclick="changeQuickStart('qs-python',this)">Python</a></li>
+ <li><a onclick="changeQuickStart('qs-perl',this)">Perl</a></li>
+ <li><a onclick="changeQuickStart('qs-cpp',this)">C/C++</a></li>
+ <li><a onclick="changeQuickStart('qs-java',this)">Java</a></li>
+ <li><a onclick="changeQuickStart('qs-php',this)">PHP</a></li>
+ <li><a onclick="changeQuickStart('qs-javascript',this)">JavaScript</a></li>
+ <li><a onclick="changeQuickStart('qs-objective-c',this)">Objective-C</a></li>
+ <li><a onclick="changeQuickStart('qs-csharp',this)">C#/CLI</a></li>
+ <li><a onclick="changeQuickStart('qs-lua',this)">Lua</a></li>
+ <li><a onclick="changeQuickStart('qs-scala',this)">Scala</a></li>
+ <li><a onclick="changeQuickStart('qs-d',this)">D</a></li>
+ <li><a onclick="changeQuickStart('qs-haskell',this)">Haskell</a></li>
+ <li><a onclick="changeQuickStart('qs-erlang',this)">Erlang</a></li>
+ <li><a onclick="changeQuickStart('qs-ocaml',this)">OCaml</a></li>
+ <li><a onclick="changeQuickStart('qs-go',this)">Go</a></li>
+ </ul>
+
+ <div id="quickstart" class="qsholder"></div>
+
+ <div id="qs-ruby" class="qs">
+ <h4>Ruby</h4>
+ <ul class="hlist">
+ <li><a href="http://msgpack.org/rdoc/current/MessagePack.html">API Reference</a></li>
+ <li><a href="http://rubygems.org/gems/msgpack">RubyGems</a></li>
+ </ul>
+ <pre class="prettyprint">gem install msgpack</pre>
+ <pre class="prettyprint">require "msgpack"
+msg = [1,2,3].to_msgpack #=&gt; "\x93\x01\x02\x03"
+MessagePack.unpack(msg) #=&gt; [1,2,3]</pre>
+ <p>Ruby implementation provides <a href="http://msgpack.org/rdoc/current/MessagePack/Unpacker.html">streaming deserializer</a>.</p>
+ </div>
+
+ <div id="qs-python" class="qs">
+ <h4>Python</h4>
+ <ul class="hlist">
+ <li><a href="http://pypi.python.org/pypi/msgpack-python/">PyPI</a></li>
+ </ul>
+ <pre class="prettyprint">easy_install msgpack-python</pre>
+ <pre class="prettyprint">import msgpack
+msg = msgpack.packb([1,2,3]) #=&gt; "\x93\x01\x02\x03"
+msgpack.unpackb(msg) #=&gt; [1,2,3]
+help(msgpack)</pre>
+ <p>Python implementation provides streaming deserializer.</p>
+ </div>
+
+ <div id="qs-perl" class="qs">
+ <h4>Perl</h4>
+ <ul class="hlist">
+ <li><a href="http://search.cpan.org/~tokuhirom/Data-MessagePack/lib/Data/MessagePack.pm">API Reference</a></li>
+ <li><a href="http://search.cpan.org/~tokuhirom/Data-MessagePack/">CPAN</a></li>
+ </ul>
+ <pre class="prettyprint">cpan Data::MessagePack</pre>
+ <pre class="prettyprint">use Data::MessagePack;
+my $packed = Data::MessagePack-&gt;pack($dat);
+my $unpacked = Data::MessagePack-&gt;unpack($dat);</pre>
+ <p>Perl implementation provides <a href="http://search.cpan.org/~tokuhirom/Data-MessagePack/lib/Data/MessagePack/Unpacker.pod">streaming deserializer</a>.</p>
+ </div>
+
+ <div id="qs-cpp" class="qs">
+ <h4>C/C++</h4>
+ <ul class="hlist">
+ <li><a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+C+Language">Quick Start for C</a></li>
+ <li><a href="http://wiki.msgpack.org/pages/viewpage.action?pageId=1081387">Quick Start for C++</a></li>
+ </ul>
+ <pre class="prettyprint">port install msgpack # MacPorts
+brew install msgpack # Homebrew
+apt-get install libmsgpack-dev # Ubuntu</pre>
+ <p>Or download <a href="http://msgpack.org/releases/cpp/msgpack-0.5.7.tar.gz">msgpack-0.5.7.tar.gz</a> and build it to install.</p>
+ <pre class="prettyprint">#include &lt;msgpack.hpp&gt;
+struct myclass { std::vector<int> vec; MSGPACK_DEFINE(vec); };
+msgpack::pack(buffer, vec);
+msgpack::unpack(&amp;result, buffer.data(), buffer.size());</pre>
+ </div>
+
+ <div id="qs-java" class="qs">
+ <h4>Java</h4>
+ <ul class="hlist">
+ <li><a href="http://msgpack.org/javadoc/current/">API Reference</a></li>
+ <li><a href="http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.msgpack%22%20AND%20a%3A%22msgpack%22">Maven</a></li>
+ <li><a href="https://github.com/msgpack/msgpack-java">GitHub</a></li>
+ </ul>
+ <pre class="prettyprint">import org.msgpack.MessagePack;
+
+MessagePack msgpack = new MessagePack();
+byte[] bytes = msgpack.write(object);
+MyClass object = msgpack.read(bytes, MyClass.class);</pre>
+ <p>Java implementation provides <a href="http://msgpack.org/javadoc/current/org/msgpack/unpacker/package-summary.html">streaming deserializer</a>, <a href="http://msgpack.org/javadoc/current/org/msgpack/type/package-summary.html">dynamically typed objects</a>, <a href="http://msgpack.org/javadoc/current/org/msgpack/template/package-summary.html">type conversion templates</a>, <a href="http://msgpack.org/javadoc/current/org/msgpack/template/builder/package-summary.html">dynamic template generators</a> and <a href="http://msgpack.org/javadoc/current/org/msgpack/annotation/package-summary.html">annotations</a>.</p>
+ <p>Take a look at <a href="https://github.com/msgpack/msgpack-java/tree/master/src/test/java/org/msgpack">test cases</a> for examples.</p>
+ </div>
+
+ <div id="qs-php" class="qs">
+ <h4>PHP</h4>
+ <ul class="hlist">
+ <li><a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+PHP">Quick Start</a></li>
+ </ul>
+ <pre class="prettyprint">git clone https://github.com/msgpack/msgpack.git
+cd msgpack/php
+phpize
+./configure &amp;&amp; make &amp;&amp; make install</pre>
+ <pre class="prettyprint">$data = array(0=&gt;1,1=&gt;2,2=&gt;3);
+$msg = msgpack_pack($data);
+$data = msgpack_unpack($msg);</pre>
+ </div>
+
+ <div id="qs-javascript" class="qs">
+ <h4>JavaScript</h4>
+ <ul class="hlist">
+ <li><a href="https://github.com/msgpack/msgpack-javascript">GitHub</a></li>
+ <li><a href="https://raw.github.com/msgpack/msgpack-javascript/master/msgpack.js">msgpack.js</a></li>
+ </ul>
+ <pre class="prettyprint">var myByteArray = msgpack.pack(myObject);
+myObject = msgpack.unpack(myByteArray);</pre>
+ <p>Licensed under MIT license.</p>
+ </div>
+
+ <div id="qs-objective-c" class="qs">
+ <h4>Objective-C</h4>
+ <ul class="hlist">
+ <li><a href="https://github.com/msgpack/msgpack-objectivec">GitHub</a></li>
+ </ul>
+ <pre class="prettyprint">
+#import "MessagePack.h"
+..
+NSData* packed = [someArray messagePack];
+NSArray* someArray = [packed messagePackParse];
+ </pre>
+ </div>
+
+ <div id="qs-csharp" class="qs">
+ <h4>C#/CLI</h4>
+ <ul class="hlist">
+ <li><a href="https://github.com/msgpack/msgpack-cli">GitHub</a></li>
+ <li><a href="https://github.com/yfakariya/msgpack/wiki/">Wiki</a></li>
+ </ul>
+ <pre class="prettyprint">
+var serializer = MessagePackSerializer.Create<Foo>();
+serializer.Pack(foo, stream);
+stream.Position = 0;
+var value = serializer.Unpack(stream);
+ </pre>
+ </div>
+
+ <div id="qs-lua" class="qs">
+ <h4>Lua</h4>
+ </div>
+
+ <div id="qs-scala" class="qs">
+ <h4>Scala</h4>
+ </div>
+
+ <div id="qs-d" class="qs">
+ <h4>D</h4>
+ <ul class="hlist">
+ <!-- <li><a href="http://msgpack.github.org/msgpack-d">API Reference</a></li> -->
+ <li><a href="https://github.com/msgpack/msgpack-d">GitHub</a></li>
+ </ul>
+ <p>msgpack-d is only one file. Please msgpack.d into your project.</p>
+ <pre class="prettyprint">import msgpack;
+
+Tuple!(uint, string) recieve, send = tuple(2012. "Hello D!");
+serialized = pack(msg);
+unpack(serialized, recieve);
+assert(send == recieve);</pre>
+ <p>D implementation also provides streaming deserializer.</p>
+ </div>
+
+ <div id="qs-haskell" class="qs">
+ <h4>Haskell</h4>
+ </div>
+
+ <div id="qs-erlang" class="qs">
+ <h4>Erlang</h4>
+ <ul class="hlist">
+ <li><a href="http://msgpack.org/edoc/">API Reference</a></li>
+ <li><a href="http://github.com/msgpack/msgpack-erlang">Repository</a></li>
+ </ul>
+ <p>Write into your <a href="http://github.com/basho/rebar">rebar</a>.config:</p>
+ <pre class="prettyprint">{deps, [
+ {erl_msgpack, ".*",
+ {git, "git://github.com/msgpack/msgpack-erlang.git", "HEAD"}}
+]}.</pre>
+ <pre class="prettyprint">Spam = msgpack:pack(Ham),
+Ham = msgpack:unpack(Spam).</pre>
+ </div>
+
+ <div id="qs-ocaml" class="qs">
+ <h4>OCaml</h4>
+ <pre class="prettyprint">
+$ git clone git@github.com:msgpack/msgpack.git
+$ cd msgpack/ocaml
+$ omake
+$ omake install
+ </pre>
+ <pre class="prettyprint">
+Msgpack.Serialize.desrialize_string("\147\001\002\003");;
+ </pre>
+ <a href="https://github.com/msgpack/msgpack/tree/master/ocaml/proof">This library is mathematically proven!</a>
+ </div>
+
+ <div id="qs-go" class="qs">
+ <h4>Go</h4>
+ </div>
+ </div>
+
+ <h3>Related projects</h3>
+ <div class="paragraphs">
+ <h4><a href="https://github.com/dotcloud/zerorpc-python">ZeroRPC</a> by DotCloud</h4>
+ <p>zerorpc is a flexible RPC implementation based on zeromq and messagepack. Service APIs exposed with zerorpc are called "zeroservices".</p>
+
+ <h4><a href="https://github.com/pfi/pficommon">pficommon</a> by Preferred Infrastructure, Inc.</h4>
+ <p>General purpose C++ library for Preferred Infrastructure, Inc. It includes MessagePack-RPC implementation for C++</p>
+
+ <!--
+ <h4><a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Ruby#QuickStartforRuby-RPCQuickStartforRuby">MessagePack-RPC for Ruby</a></h4>
+ <p>MessagePack-RPC implementation for Ruby</p>
+
+ <h4><a href="http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Java#QuickStartforJava-MessagePackRPCforJava">MessagePack-RPC for Java</a></h4>
+ <p>MessagePack-RPC implementation for Java</p>
+
+ <h4><a href="https://github.com/msgpack/msgpack-rpc/tree/master/haskell">MessagePack-RPC for Haskell</a></h4>
+ <p>MessagePack-RPC implementation for Haskell</p>
+
+ <h4><a href="https://github.com/msgpack/msgpack-rpc-python">MessagePack-RPC for Python</a></h4>
+ <p>MessagePack-RPC implementation for Python</p>
+ -->
+ </div>
+ </div>
+ </div>
+
+ <footer id="footer">
+ <div id="footerbody" class="paragraphs">
+ <div id="social">
+ <iframe src="http://markdotto.github.com/github-buttons/github-btn.html?user=msgpack&repo=github-buttons&type=watch"
+ allowtransparency="true" frameborder="0" scrolling="0" width="62px" height="20px" style="margin-right:20px"></iframe>
+
+ <a href="https://twitter.com/share" class="twitter-share-button" data-hashtags="msgpack">Tweet</a>
+ <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
+
+ <div class="fb-like" data-href="http://msgpack.org/" data-send="false" data-layout="button_count" data-width="120" data-show-faces="false"></div>
+ </div>
+
+ <div id="thanks">
+ <p id="sponsor"><a href="http://treasure-data.com/?source=mp">Sponsored by Treasure Data, Inc. <img src="images/td-icon.png" width="20" height="20" /></a></p>
+ <p>Copyright &copy; 2008-2012 FURUHASHI Sadayuki</p>
+ </div>
+ </div>
+ </footer>
</body>
</html>
-
View
BIN  index/arrow.png
Deleted file not rendered
View
BIN  index/headline1.png
Deleted file not rendered
View
BIN  index/headline2.png
Deleted file not rendered
View
BIN  index/icon-ng.png
Deleted file not rendered
View
BIN  index/icon-ok.png
Deleted file not rendered
View
154 index/jquery.js
@@ -1,154 +0,0 @@
-/*!
- * jQuery JavaScript Library v1.4.2
- * http://jquery.com/
- *
- * Copyright 2010, John Resig
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * Includes Sizzle.js
- * http://sizzlejs.com/
- * Copyright 2010, The Dojo Foundation
- * Released under the MIT, BSD, and GPL Licenses.
- *
- * Date: Sat Feb 13 22:33:48 2010 -0500
- */
-(function(A,w){function ma(){if(!c.isReady){try{s.documentElement.doScroll("left")}catch(a){setTimeout(ma,1);return}c.ready()}}function Qa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function X(a,b,d,f,e,j){var i=a.length;if(typeof b==="object"){for(var o in b)X(a,o,b[o],f,e,d);return a}if(d!==w){f=!j&&f&&c.isFunction(d);for(o=0;o<i;o++)e(a[o],b,f?d.call(a[o],o,e(a[o],b)):d,j);return a}return i?
-e(a[0],b):w}function J(){return(new Date).getTime()}function Y(){return false}function Z(){return true}function na(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function oa(a){var b,d=[],f=[],e=arguments,j,i,o,k,n,r;i=c.data(this,"events");if(!(a.liveFired===this||!i||!i.live||a.button&&a.type==="click")){a.liveFired=this;var u=i.live.slice(0);for(k=0;k<u.length;k++){i=u[k];i.origType.replace(O,"")===a.type?f.push(i.selector):u.splice(k--,1)}j=c(a.target).closest(f,a.currentTarget);n=0;for(r=
-j.length;n<r;n++)for(k=0;k<u.length;k++){i=u[k];if(j[n].selector===i.selector){o=j[n].elem;f=null;if(i.preType==="mouseenter"||i.preType==="mouseleave")f=c(a.relatedTarget).closest(i.selector)[0];if(!f||f!==o)d.push({elem:o,handleObj:i})}}n=0;for(r=d.length;n<r;n++){j=d[n];a.currentTarget=j.elem;a.data=j.handleObj.data;a.handleObj=j.handleObj;if(j.handleObj.origHandler.apply(j.elem,e)===false){b=false;break}}return b}}function pa(a,b){return"live."+(a&&a!=="*"?a+".":"")+b.replace(/\./g,"`").replace(/ /g,
-"&")}function qa(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function ra(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var f=c.data(a[d++]),e=c.data(this,f);if(f=f&&f.events){delete e.handle;e.events={};for(var j in f)for(var i in f[j])c.event.add(this,j,f[j][i],f[j][i].data)}}})}function sa(a,b,d){var f,e,j;b=b&&b[0]?b[0].ownerDocument||b[0]:s;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===s&&!ta.test(a[0])&&(c.support.checkClone||!ua.test(a[0]))){e=
-true;if(j=c.fragments[a[0]])if(j!==1)f=j}if(!f){f=b.createDocumentFragment();c.clean(a,b,f,d)}if(e)c.fragments[a[0]]=j?f:1;return{fragment:f,cacheable:e}}function K(a,b){var d={};c.each(va.concat.apply([],va.slice(0,b)),function(){d[this]=a});return d}function wa(a){return"scrollTo"in a&&a.document?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var c=function(a,b){return new c.fn.init(a,b)},Ra=A.jQuery,Sa=A.$,s=A.document,T,Ta=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,Ua=/^.[^:#\[\.,]*$/,Va=/\S/,
-Wa=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,Xa=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,P=navigator.userAgent,xa=false,Q=[],L,$=Object.prototype.toString,aa=Object.prototype.hasOwnProperty,ba=Array.prototype.push,R=Array.prototype.slice,ya=Array.prototype.indexOf;c.fn=c.prototype={init:function(a,b){var d,f;if(!a)return this;if(a.nodeType){this.context=this[0]=a;this.length=1;return this}if(a==="body"&&!b){this.context=s;this[0]=s.body;this.selector="body";this.length=1;return this}if(typeof a==="string")if((d=Ta.exec(a))&&
-(d[1]||!b))if(d[1]){f=b?b.ownerDocument||b:s;if(a=Xa.exec(a))if(c.isPlainObject(b)){a=[s.createElement(a[1])];c.fn.attr.call(a,b,true)}else a=[f.createElement(a[1])];else{a=sa([d[1]],[f]);a=(a.cacheable?a.fragment.cloneNode(true):a.fragment).childNodes}return c.merge(this,a)}else{if(b=s.getElementById(d[2])){if(b.id!==d[2])return T.find(a);this.length=1;this[0]=b}this.context=s;this.selector=a;return this}else if(!b&&/^\w+$/.test(a)){this.selector=a;this.context=s;a=s.getElementsByTagName(a);return c.merge(this,
-a)}else return!b||b.jquery?(b||T).find(a):c(b).find(a);else if(c.isFunction(a))return T.ready(a);if(a.selector!==w){this.selector=a.selector;this.context=a.context}return c.makeArray(a,this)},selector:"",jquery:"1.4.2",length:0,size:function(){return this.length},toArray:function(){return R.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this.slice(a)[0]:this[a]},pushStack:function(a,b,d){var f=c();c.isArray(a)?ba.apply(f,a):c.merge(f,a);f.prevObject=this;f.context=this.context;if(b===
-"find")f.selector=this.selector+(this.selector?" ":"")+d;else if(b)f.selector=this.selector+"."+b+"("+d+")";return f},each:function(a,b){return c.each(this,a,b)},ready:function(a){c.bindReady();if(c.isReady)a.call(s,c);else Q&&Q.push(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(R.apply(this,arguments),"slice",R.call(arguments).join(","))},map:function(a){return this.pushStack(c.map(this,
-function(b,d){return a.call(b,d,b)}))},end:function(){return this.prevObject||c(null)},push:ba,sort:[].sort,splice:[].splice};c.fn.init.prototype=c.fn;c.extend=c.fn.extend=function(){var a=arguments[0]||{},b=1,d=arguments.length,f=false,e,j,i,o;if(typeof a==="boolean"){f=a;a=arguments[1]||{};b=2}if(typeof a!=="object"&&!c.isFunction(a))a={};if(d===b){a=this;--b}for(;b<d;b++)if((e=arguments[b])!=null)for(j in e){i=a[j];o=e[j];if(a!==o)if(f&&o&&(c.isPlainObject(o)||c.isArray(o))){i=i&&(c.isPlainObject(i)||
-c.isArray(i))?i:c.isArray(o)?[]:{};a[j]=c.extend(f,i,o)}else if(o!==w)a[j]=o}return a};c.extend({noConflict:function(a){A.$=Sa;if(a)A.jQuery=Ra;return c},isReady:false,ready:function(){if(!c.isReady){if(!s.body)return setTimeout(c.ready,13);c.isReady=true;if(Q){for(var a,b=0;a=Q[b++];)a.call(s,c);Q=null}c.fn.triggerHandler&&c(s).triggerHandler("ready")}},bindReady:function(){if(!xa){xa=true;if(s.readyState==="complete")return c.ready();if(s.addEventListener){s.addEventListener("DOMContentLoaded",
-L,false);A.addEventListener("load",c.ready,false)}else if(s.attachEvent){s.attachEvent("onreadystatechange",L);A.attachEvent("onload",c.ready);var a=false;try{a=A.frameElement==null}catch(b){}s.documentElement.doScroll&&a&&ma()}}},isFunction:function(a){return $.call(a)==="[object Function]"},isArray:function(a){return $.call(a)==="[object Array]"},isPlainObject:function(a){if(!a||$.call(a)!=="[object Object]"||a.nodeType||a.setInterval)return false;if(a.constructor&&!aa.call(a,"constructor")&&!aa.call(a.constructor.prototype,
-"isPrototypeOf"))return false;var b;for(b in a);return b===w||aa.call(a,b)},isEmptyObject:function(a){for(var b in a)return false;return true},error:function(a){throw a;},parseJSON:function(a){if(typeof a!=="string"||!a)return null;a=c.trim(a);if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return A.JSON&&A.JSON.parse?A.JSON.parse(a):(new Function("return "+
-a))();else c.error("Invalid JSON: "+a)},noop:function(){},globalEval:function(a){if(a&&Va.test(a)){var b=s.getElementsByTagName("head")[0]||s.documentElement,d=s.createElement("script");d.type="text/javascript";if(c.support.scriptEval)d.appendChild(s.createTextNode(a));else d.text=a;b.insertBefore(d,b.firstChild);b.removeChild(d)}},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,b,d){var f,e=0,j=a.length,i=j===w||c.isFunction(a);if(d)if(i)for(f in a){if(b.apply(a[f],
-d)===false)break}else for(;e<j;){if(b.apply(a[e++],d)===false)break}else if(i)for(f in a){if(b.call(a[f],f,a[f])===false)break}else for(d=a[0];e<j&&b.call(d,e,d)!==false;d=a[++e]);return a},trim:function(a){return(a||"").replace(Wa,"")},makeArray:function(a,b){b=b||[];if(a!=null)a.length==null||typeof a==="string"||c.isFunction(a)||typeof a!=="function"&&a.setInterval?ba.call(b,a):c.merge(b,a);return b},inArray:function(a,b){if(b.indexOf)return b.indexOf(a);for(var d=0,f=b.length;d<f;d++)if(b[d]===
-a)return d;return-1},merge:function(a,b){var d=a.length,f=0;if(typeof b.length==="number")for(var e=b.length;f<e;f++)a[d++]=b[f];else for(;b[f]!==w;)a[d++]=b[f++];a.length=d;return a},grep:function(a,b,d){for(var f=[],e=0,j=a.length;e<j;e++)!d!==!b(a[e],e)&&f.push(a[e]);return f},map:function(a,b,d){for(var f=[],e,j=0,i=a.length;j<i;j++){e=b(a[j],j,d);if(e!=null)f[f.length]=e}return f.concat.apply([],f)},guid:1,proxy:function(a,b,d){if(arguments.length===2)if(typeof b==="string"){d=a;a=d[b];b=w}else if(b&&
-!c.isFunction(b)){d=b;b=w}if(!b&&a)b=function(){return a.apply(d||this,arguments)};if(a)b.guid=a.guid=a.guid||b.guid||c.guid++;return b},uaMatch:function(a){a=a.toLowerCase();a=/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||!/compatible/.test(a)&&/(mozilla)(?:.*? rv:([\w.]+))?/.exec(a)||[];return{browser:a[1]||"",version:a[2]||"0"}},browser:{}});P=c.uaMatch(P);if(P.browser){c.browser[P.browser]=true;c.browser.version=P.version}if(c.browser.webkit)c.browser.safari=
-true;if(ya)c.inArray=function(a,b){return ya.call(b,a)};T=c(s);if(s.addEventListener)L=function(){s.removeEventListener("DOMContentLoaded",L,false);c.ready()};else if(s.attachEvent)L=function(){if(s.readyState==="complete"){s.detachEvent("onreadystatechange",L);c.ready()}};(function(){c.support={};var a=s.documentElement,b=s.createElement("script"),d=s.createElement("div"),f="script"+J();d.style.display="none";d.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
-var e=d.getElementsByTagName("*"),j=d.getElementsByTagName("a")[0];if(!(!e||!e.length||!j)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(j.getAttribute("style")),hrefNormalized:j.getAttribute("href")==="/a",opacity:/^0.55$/.test(j.style.opacity),cssFloat:!!j.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:s.createElement("select").appendChild(s.createElement("option")).selected,
-parentNode:d.removeChild(d.appendChild(s.createElement("div"))).parentNode===null,deleteExpando:true,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null};b.type="text/javascript";try{b.appendChild(s.createTextNode("window."+f+"=1;"))}catch(i){}a.insertBefore(b,a.firstChild);if(A[f]){c.support.scriptEval=true;delete A[f]}try{delete b.test}catch(o){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function k(){c.support.noCloneEvent=
-false;d.detachEvent("onclick",k)});d.cloneNode(true).fireEvent("onclick")}d=s.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=s.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var k=s.createElement("div");k.style.width=k.style.paddingLeft="1px";s.body.appendChild(k);c.boxModel=c.support.boxModel=k.offsetWidth===2;s.body.removeChild(k).style.display="none"});a=function(k){var n=
-s.createElement("div");k="on"+k;var r=k in n;if(!r){n.setAttribute(k,"return;");r=typeof n[k]==="function"}return r};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=e=j=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var G="jQuery"+J(),Ya=0,za={};c.extend({cache:{},expando:G,noData:{embed:true,object:true,
-applet:true},data:function(a,b,d){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var f=a[G],e=c.cache;if(!f&&typeof b==="string"&&d===w)return null;f||(f=++Ya);if(typeof b==="object"){a[G]=f;e[f]=c.extend(true,{},b)}else if(!e[f]){a[G]=f;e[f]={}}a=e[f];if(d!==w)a[b]=d;return typeof b==="string"?a[b]:a}},removeData:function(a,b){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var d=a[G],f=c.cache,e=f[d];if(b){if(e){delete e[b];c.isEmptyObject(e)&&c.removeData(a)}}else{if(c.support.deleteExpando)delete a[c.expando];
-else a.removeAttribute&&a.removeAttribute(c.expando);delete f[d]}}}});c.fn.extend({data:function(a,b){if(typeof a==="undefined"&&this.length)return c.data(this[0]);else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===w){var f=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(f===w&&this.length)f=c.data(this[0],a);return f===w&&d[1]?this.data(d[0]):f}else return this.trigger("setData"+d[1]+"!",[d[0],b]).each(function(){c.data(this,
-a,b)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var f=c.data(a,b);if(!d)return f||[];if(!f||c.isArray(d))f=c.data(a,b,c.makeArray(d));else f.push(d);return f}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),f=d.shift();if(f==="inprogress")f=d.shift();if(f){b==="fx"&&d.unshift("inprogress");f.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===
-w)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var Aa=/[\n\t]/g,ca=/\s+/,Za=/\r/g,$a=/href|src|style/,ab=/(button|input)/i,bb=/(button|input|object|select|textarea)/i,
-cb=/^(a|area)$/i,Ba=/radio|checkbox/;c.fn.extend({attr:function(a,b){return X(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(n){var r=c(this);r.addClass(a.call(this,n,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1)if(e.className){for(var j=" "+e.className+" ",
-i=e.className,o=0,k=b.length;o<k;o++)if(j.indexOf(" "+b[o]+" ")<0)i+=" "+b[o];e.className=c.trim(i)}else e.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(k){var n=c(this);n.removeClass(a.call(this,k,n.attr("class")))});if(a&&typeof a==="string"||a===w)for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1&&e.className)if(a){for(var j=(" "+e.className+" ").replace(Aa," "),i=0,o=b.length;i<o;i++)j=j.replace(" "+b[i]+" ",
-" ");e.className=c.trim(j)}else e.className=""}return this},toggleClass:function(a,b){var d=typeof a,f=typeof b==="boolean";if(c.isFunction(a))return this.each(function(e){var j=c(this);j.toggleClass(a.call(this,e,j.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var e,j=0,i=c(this),o=b,k=a.split(ca);e=k[j++];){o=f?o:!i.hasClass(e);i[o?"addClass":"removeClass"](e)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,"__className__",this.className);this.className=
-this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(Aa," ").indexOf(a)>-1)return true;return false},val:function(a){if(a===w){var b=this[0];if(b){if(c.nodeName(b,"option"))return(b.attributes.value||{}).specified?b.value:b.text;if(c.nodeName(b,"select")){var d=b.selectedIndex,f=[],e=b.options;b=b.type==="select-one";if(d<0)return null;var j=b?d:0;for(d=b?d+1:e.length;j<d;j++){var i=
-e[j];if(i.selected){a=c(i).val();if(b)return a;f.push(a)}}return f}if(Ba.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Za,"")}return w}var o=c.isFunction(a);return this.each(function(k){var n=c(this),r=a;if(this.nodeType===1){if(o)r=a.call(this,k,n.val());if(typeof r==="number")r+="";if(c.isArray(r)&&Ba.test(this.type))this.checked=c.inArray(n.val(),r)>=0;else if(c.nodeName(this,"select")){var u=c.makeArray(r);c("option",this).each(function(){this.selected=
-c.inArray(c(this).val(),u)>=0});if(!u.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,f){if(!a||a.nodeType===3||a.nodeType===8)return w;if(f&&b in c.attrFn)return c(a)[b](d);f=a.nodeType!==1||!c.isXMLDoc(a);var e=d!==w;b=f&&c.props[b]||b;if(a.nodeType===1){var j=$a.test(b);if(b in a&&f&&!j){if(e){b==="type"&&ab.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");
-a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:bb.test(a.nodeName)||cb.test(a.nodeName)&&a.href?0:w;return a[b]}if(!c.support.style&&f&&b==="style"){if(e)a.style.cssText=""+d;return a.style.cssText}e&&a.setAttribute(b,""+d);a=!c.support.hrefNormalized&&f&&j?a.getAttribute(b,2):a.getAttribute(b);return a===null?w:a}return c.style(a,b,d)}});var O=/\.(.*)$/,db=function(a){return a.replace(/[^\w\s\.\|`]/g,
-function(b){return"\\"+b})};c.event={add:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){if(a.setInterval&&a!==A&&!a.frameElement)a=A;var e,j;if(d.handler){e=d;d=e.handler}if(!d.guid)d.guid=c.guid++;if(j=c.data(a)){var i=j.events=j.events||{},o=j.handle;if(!o)j.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,arguments):w};o.elem=a;b=b.split(" ");for(var k,n=0,r;k=b[n++];){j=e?c.extend({},e):{handler:d,data:f};if(k.indexOf(".")>-1){r=k.split(".");
-k=r.shift();j.namespace=r.slice(0).sort().join(".")}else{r=[];j.namespace=""}j.type=k;j.guid=d.guid;var u=i[k],z=c.event.special[k]||{};if(!u){u=i[k]=[];if(!z.setup||z.setup.call(a,f,r,o)===false)if(a.addEventListener)a.addEventListener(k,o,false);else a.attachEvent&&a.attachEvent("on"+k,o)}if(z.add){z.add.call(a,j);if(!j.handler.guid)j.handler.guid=d.guid}u.push(j);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){var e,j=0,i,o,k,n,r,u,z=c.data(a),
-C=z&&z.events;if(z&&C){if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(e in C)c.event.remove(a,e+b)}else{for(b=b.split(" ");e=b[j++];){n=e;i=e.indexOf(".")<0;o=[];if(!i){o=e.split(".");e=o.shift();k=new RegExp("(^|\\.)"+c.map(o.slice(0).sort(),db).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(r=C[e])if(d){n=c.event.special[e]||{};for(B=f||0;B<r.length;B++){u=r[B];if(d.guid===u.guid){if(i||k.test(u.namespace)){f==null&&r.splice(B--,1);n.remove&&n.remove.call(a,u)}if(f!=
-null)break}}if(r.length===0||f!=null&&r.length===1){if(!n.teardown||n.teardown.call(a,o)===false)Ca(a,e,z.handle);delete C[e]}}else for(var B=0;B<r.length;B++){u=r[B];if(i||k.test(u.namespace)){c.event.remove(a,n,u.handler,B);r.splice(B--,1)}}}if(c.isEmptyObject(C)){if(b=z.handle)b.elem=null;delete z.events;delete z.handle;c.isEmptyObject(z)&&c.removeData(a)}}}}},trigger:function(a,b,d,f){var e=a.type||a;if(!f){a=typeof a==="object"?a[G]?a:c.extend(c.Event(e),a):c.Event(e);if(e.indexOf("!")>=0){a.type=
-e=e.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[e]&&c.each(c.cache,function(){this.events&&this.events[e]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return w;a.result=w;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(f=c.data(d,"handle"))&&f.apply(d,b);f=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+e]&&d["on"+e].apply(d,b)===false)a.result=false}catch(j){}if(!a.isPropagationStopped()&&
-f)c.event.trigger(a,b,f,true);else if(!a.isDefaultPrevented()){f=a.target;var i,o=c.nodeName(f,"a")&&e==="click",k=c.event.special[e]||{};if((!k._default||k._default.call(d,a)===false)&&!o&&!(f&&f.nodeName&&c.noData[f.nodeName.toLowerCase()])){try{if(f[e]){if(i=f["on"+e])f["on"+e]=null;c.event.triggered=true;f[e]()}}catch(n){}if(i)f["on"+e]=i;c.event.triggered=false}}},handle:function(a){var b,d,f,e;a=arguments[0]=c.event.fix(a||A.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;
-if(!b){d=a.type.split(".");a.type=d.shift();f=new RegExp("(^|\\.)"+d.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)")}e=c.data(this,"events");d=e[a.type];if(e&&d){d=d.slice(0);e=0;for(var j=d.length;e<j;e++){var i=d[e];if(b||f.test(i.namespace)){a.handler=i.handler;a.data=i.data;a.handleObj=i;i=i.handler.apply(this,arguments);if(i!==w){a.result=i;if(i===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
-fix:function(a){if(a[G])return a;var b=a;a=c.Event(b);for(var d=this.props.length,f;d;){f=this.props[--d];a[f]=b[f]}if(!a.target)a.target=a.srcElement||s;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=s.documentElement;d=s.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
-d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(!a.which&&(a.charCode||a.charCode===0?a.charCode:a.keyCode))a.which=a.charCode||a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==w)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,a.origType,c.extend({},a,{handler:oa}))},remove:function(a){var b=true,d=a.origType.replace(O,"");c.each(c.data(this,
-"events").live||[],function(){if(d===this.origType.replace(O,""))return b=false});b&&c.event.remove(this,a.origType,oa)}},beforeunload:{setup:function(a,b,d){if(this.setInterval)this.onbeforeunload=d;return false},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};var Ca=s.removeEventListener?function(a,b,d){a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=
-a;this.type=a.type}else this.type=a;this.timeStamp=J();this[G]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=Z;var a=this.originalEvent;if(a){a.preventDefault&&a.preventDefault();a.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=Z;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Z;this.stopPropagation()},isDefaultPrevented:Y,isPropagationStopped:Y,
-isImmediatePropagationStopped:Y};var Da=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},Ea=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?Ea:Da,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?Ea:Da)}}});if(!c.support.submitBubbles)c.event.special.submit=
-{setup:function(){if(this.nodeName.toLowerCase()!=="form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length)return na("submit",this,arguments)});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13)return na("submit",this,arguments)})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};
-if(!c.support.changeBubbles){var da=/textarea|input|select/i,ea,Fa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(f){return f.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},fa=function(a,b){var d=a.target,f,e;if(!(!da.test(d.nodeName)||d.readOnly)){f=c.data(d,"_change_data");e=Fa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",
-e);if(!(f===w||e===f))if(f!=null||e){a.type="change";return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:fa,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return fa.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return fa.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,
-"_change_data",Fa(a))}},setup:function(){if(this.type==="file")return false;for(var a in ea)c.event.add(this,a+".specialChange",ea[a]);return da.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return da.test(this.nodeName)}};ea=c.event.special.change.filters}s.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(f){f=c.event.fix(f);f.type=b;return c.event.handle.call(this,f)}c.event.special[b]={setup:function(){this.addEventListener(a,
-d,true)},teardown:function(){this.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,f,e){if(typeof d==="object"){for(var j in d)this[b](j,f,d[j],e);return this}if(c.isFunction(f)){e=f;f=w}var i=b==="one"?c.proxy(e,function(k){c(this).unbind(k,i);return e.apply(this,arguments)}):e;if(d==="unload"&&b!=="one")this.one(d,f,e);else{j=0;for(var o=this.length;j<o;j++)c.event.add(this[j],d,i,f)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&
-!a.preventDefault)for(var d in a)this.unbind(d,a[d]);else{d=0;for(var f=this.length;d<f;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,f){return this.live(b,d,f,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){a=c.Event(a);a.preventDefault();a.stopPropagation();c.event.trigger(a,b,this[0]);return a.result}},
-toggle:function(a){for(var b=arguments,d=1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(f){var e=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,e+1);f.preventDefault();return b[e].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var Ga={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,f,e,j){var i,o=0,k,n,r=j||this.selector,
-u=j?this:c(this.context);if(c.isFunction(f)){e=f;f=w}for(d=(d||"").split(" ");(i=d[o++])!=null;){j=O.exec(i);k="";if(j){k=j[0];i=i.replace(O,"")}if(i==="hover")d.push("mouseenter"+k,"mouseleave"+k);else{n=i;if(i==="focus"||i==="blur"){d.push(Ga[i]+k);i+=k}else i=(Ga[i]||i)+k;b==="live"?u.each(function(){c.event.add(this,pa(i,r),{data:f,selector:r,handler:e,origType:i,origHandler:e,preType:n})}):u.unbind(pa(i,r),e)}}return this}});c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),
-function(a,b){c.fn[b]=function(d){return d?this.bind(b,d):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});A.attachEvent&&!A.addEventListener&&A.attachEvent("onunload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});(function(){function a(g){for(var h="",l,m=0;g[m];m++){l=g[m];if(l.nodeType===3||l.nodeType===4)h+=l.nodeValue;else if(l.nodeType!==8)h+=a(l.childNodes)}return h}function b(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];
-if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1&&!p){t.sizcache=l;t.sizset=q}if(t.nodeName.toLowerCase()===h){y=t;break}t=t[g]}m[q]=y}}}function d(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1){if(!p){t.sizcache=l;t.sizset=q}if(typeof h!=="string"){if(t===h){y=true;break}}else if(k.filter(h,[t]).length>0){y=t;break}}t=t[g]}m[q]=y}}}var f=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
-e=0,j=Object.prototype.toString,i=false,o=true;[0,0].sort(function(){o=false;return 0});var k=function(g,h,l,m){l=l||[];var q=h=h||s;if(h.nodeType!==1&&h.nodeType!==9)return[];if(!g||typeof g!=="string")return l;for(var p=[],v,t,y,S,H=true,M=x(h),I=g;(f.exec(""),v=f.exec(I))!==null;){I=v[3];p.push(v[1]);if(v[2]){S=v[3];break}}if(p.length>1&&r.exec(g))if(p.length===2&&n.relative[p[0]])t=ga(p[0]+p[1],h);else for(t=n.relative[p[0]]?[h]:k(p.shift(),h);p.length;){g=p.shift();if(n.relative[g])g+=p.shift();
-t=ga(g,t)}else{if(!m&&p.length>1&&h.nodeType===9&&!M&&n.match.ID.test(p[0])&&!n.match.ID.test(p[p.length-1])){v=k.find(p.shift(),h,M);h=v.expr?k.filter(v.expr,v.set)[0]:v.set[0]}if(h){v=m?{expr:p.pop(),set:z(m)}:k.find(p.pop(),p.length===1&&(p[0]==="~"||p[0]==="+")&&h.parentNode?h.parentNode:h,M);t=v.expr?k.filter(v.expr,v.set):v.set;if(p.length>0)y=z(t);else H=false;for(;p.length;){var D=p.pop();v=D;if(n.relative[D])v=p.pop();else D="";if(v==null)v=h;n.relative[D](y,v,M)}}else y=[]}y||(y=t);y||k.error(D||
-g);if(j.call(y)==="[object Array]")if(H)if(h&&h.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&E(h,y[g])))l.push(t[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&l.push(t[g]);else l.push.apply(l,y);else z(y,l);if(S){k(S,q,l,m);k.uniqueSort(l)}return l};k.uniqueSort=function(g){if(B){i=o;g.sort(B);if(i)for(var h=1;h<g.length;h++)g[h]===g[h-1]&&g.splice(h--,1)}return g};k.matches=function(g,h){return k(g,null,null,h)};k.find=function(g,h,l){var m,q;if(!g)return[];
-for(var p=0,v=n.order.length;p<v;p++){var t=n.order[p];if(q=n.leftMatch[t].exec(g)){var y=q[1];q.splice(1,1);if(y.substr(y.length-1)!=="\\"){q[1]=(q[1]||"").replace(/\\/g,"");m=n.find[t](q,h,l);if(m!=null){g=g.replace(n.match[t],"");break}}}}m||(m=h.getElementsByTagName("*"));return{set:m,expr:g}};k.filter=function(g,h,l,m){for(var q=g,p=[],v=h,t,y,S=h&&h[0]&&x(h[0]);g&&h.length;){for(var H in n.filter)if((t=n.leftMatch[H].exec(g))!=null&&t[2]){var M=n.filter[H],I,D;D=t[1];y=false;t.splice(1,1);if(D.substr(D.length-
-1)!=="\\"){if(v===p)p=[];if(n.preFilter[H])if(t=n.preFilter[H](t,v,l,p,m,S)){if(t===true)continue}else y=I=true;if(t)for(var U=0;(D=v[U])!=null;U++)if(D){I=M(D,t,U,v);var Ha=m^!!I;if(l&&I!=null)if(Ha)y=true;else v[U]=false;else if(Ha){p.push(D);y=true}}if(I!==w){l||(v=p);g=g.replace(n.match[H],"");if(!y)return[];break}}}if(g===q)if(y==null)k.error(g);else break;q=g}return v};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var n=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,
-CLASS:/\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},
-relative:{"+":function(g,h){var l=typeof h==="string",m=l&&!/\W/.test(h);l=l&&!m;if(m)h=h.toLowerCase();m=0;for(var q=g.length,p;m<q;m++)if(p=g[m]){for(;(p=p.previousSibling)&&p.nodeType!==1;);g[m]=l||p&&p.nodeName.toLowerCase()===h?p||false:p===h}l&&k.filter(h,g,true)},">":function(g,h){var l=typeof h==="string";if(l&&!/\W/.test(h)){h=h.toLowerCase();for(var m=0,q=g.length;m<q;m++){var p=g[m];if(p){l=p.parentNode;g[m]=l.nodeName.toLowerCase()===h?l:false}}}else{m=0;for(q=g.length;m<q;m++)if(p=g[m])g[m]=
-l?p.parentNode:p.parentNode===h;l&&k.filter(h,g,true)}},"":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("parentNode",h,m,g,p,l)},"~":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("previousSibling",h,m,g,p,l)}},find:{ID:function(g,h,l){if(typeof h.getElementById!=="undefined"&&!l)return(g=h.getElementById(g[1]))?[g]:[]},NAME:function(g,h){if(typeof h.getElementsByName!=="undefined"){var l=[];
-h=h.getElementsByName(g[1]);for(var m=0,q=h.length;m<q;m++)h[m].getAttribute("name")===g[1]&&l.push(h[m]);return l.length===0?null:l}},TAG:function(g,h){return h.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,h,l,m,q,p){g=" "+g[1].replace(/\\/g,"")+" ";if(p)return g;p=0;for(var v;(v=h[p])!=null;p++)if(v)if(q^(v.className&&(" "+v.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))l||m.push(v);else if(l)h[p]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},
-CHILD:function(g){if(g[1]==="nth"){var h=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=h[1]+(h[2]||1)-0;g[3]=h[3]-0}g[0]=e++;return g},ATTR:function(g,h,l,m,q,p){h=g[1].replace(/\\/g,"");if(!p&&n.attrMap[h])g[1]=n.attrMap[h];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,h,l,m,q){if(g[1]==="not")if((f.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,h);else{g=k.filter(g[3],h,l,true^q);l||m.push.apply(m,
-g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,h,l){return!!k(l[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},
-text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},
-setFilters:{first:function(g,h){return h===0},last:function(g,h,l,m){return h===m.length-1},even:function(g,h){return h%2===0},odd:function(g,h){return h%2===1},lt:function(g,h,l){return h<l[3]-0},gt:function(g,h,l){return h>l[3]-0},nth:function(g,h,l){return l[3]-0===h},eq:function(g,h,l){return l[3]-0===h}},filter:{PSEUDO:function(g,h,l,m){var q=h[1],p=n.filters[q];if(p)return p(g,l,h,m);else if(q==="contains")return(g.textContent||g.innerText||a([g])||"").indexOf(h[3])>=0;else if(q==="not"){h=
-h[3];l=0;for(m=h.length;l<m;l++)if(h[l]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+q)},CHILD:function(g,h){var l=h[1],m=g;switch(l){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(l==="first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":l=h[2];var q=h[3];if(l===1&&q===0)return true;h=h[0];var p=g.parentNode;if(p&&(p.sizcache!==h||!g.nodeIndex)){var v=0;for(m=p.firstChild;m;m=
-m.nextSibling)if(m.nodeType===1)m.nodeIndex=++v;p.sizcache=h}g=g.nodeIndex-q;return l===0?g===0:g%l===0&&g/l>=0}},ID:function(g,h){return g.nodeType===1&&g.getAttribute("id")===h},TAG:function(g,h){return h==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===h},CLASS:function(g,h){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(h)>-1},ATTR:function(g,h){var l=h[1];g=n.attrHandle[l]?n.attrHandle[l](g):g[l]!=null?g[l]:g.getAttribute(l);l=g+"";var m=h[2];h=h[4];return g==null?m==="!=":m===
-"="?l===h:m==="*="?l.indexOf(h)>=0:m==="~="?(" "+l+" ").indexOf(h)>=0:!h?l&&g!==false:m==="!="?l!==h:m==="^="?l.indexOf(h)===0:m==="$="?l.substr(l.length-h.length)===h:m==="|="?l===h||l.substr(0,h.length+1)===h+"-":false},POS:function(g,h,l,m){var q=n.setFilters[h[2]];if(q)return q(g,l,h,m)}}},r=n.match.POS;for(var u in n.match){n.match[u]=new RegExp(n.match[u].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[u]=new RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[u].source.replace(/\\(\d+)/g,function(g,
-h){return"\\"+(h-0+1)}))}var z=function(g,h){g=Array.prototype.slice.call(g,0);if(h){h.push.apply(h,g);return h}return g};try{Array.prototype.slice.call(s.documentElement.childNodes,0)}catch(C){z=function(g,h){h=h||[];if(j.call(g)==="[object Array]")Array.prototype.push.apply(h,g);else if(typeof g.length==="number")for(var l=0,m=g.length;l<m;l++)h.push(g[l]);else for(l=0;g[l];l++)h.push(g[l]);return h}}var B;if(s.documentElement.compareDocumentPosition)B=function(g,h){if(!g.compareDocumentPosition||
-!h.compareDocumentPosition){if(g==h)i=true;return g.compareDocumentPosition?-1:1}g=g.compareDocumentPosition(h)&4?-1:g===h?0:1;if(g===0)i=true;return g};else if("sourceIndex"in s.documentElement)B=function(g,h){if(!g.sourceIndex||!h.sourceIndex){if(g==h)i=true;return g.sourceIndex?-1:1}g=g.sourceIndex-h.sourceIndex;if(g===0)i=true;return g};else if(s.createRange)B=function(g,h){if(!g.ownerDocument||!h.ownerDocument){if(g==h)i=true;return g.ownerDocument?-1:1}var l=g.ownerDocument.createRange(),m=
-h.ownerDocument.createRange();l.setStart(g,0);l.setEnd(g,0);m.setStart(h,0);m.setEnd(h,0);g=l.compareBoundaryPoints(Range.START_TO_END,m);if(g===0)i=true;return g};(function(){var g=s.createElement("div"),h="script"+(new Date).getTime();g.innerHTML="<a name='"+h+"'/>";var l=s.documentElement;l.insertBefore(g,l.firstChild);if(s.getElementById(h)){n.find.ID=function(m,q,p){if(typeof q.getElementById!=="undefined"&&!p)return(q=q.getElementById(m[1]))?q.id===m[1]||typeof q.getAttributeNode!=="undefined"&&
-q.getAttributeNode("id").nodeValue===m[1]?[q]:w:[]};n.filter.ID=function(m,q){var p=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&p&&p.nodeValue===q}}l.removeChild(g);l=g=null})();(function(){var g=s.createElement("div");g.appendChild(s.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(h,l){l=l.getElementsByTagName(h[1]);if(h[1]==="*"){h=[];for(var m=0;l[m];m++)l[m].nodeType===1&&h.push(l[m]);l=h}return l};g.innerHTML="<a href='#'></a>";
-if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(h){return h.getAttribute("href",2)};g=null})();s.querySelectorAll&&function(){var g=k,h=s.createElement("div");h.innerHTML="<p class='TEST'></p>";if(!(h.querySelectorAll&&h.querySelectorAll(".TEST").length===0)){k=function(m,q,p,v){q=q||s;if(!v&&q.nodeType===9&&!x(q))try{return z(q.querySelectorAll(m),p)}catch(t){}return g(m,q,p,v)};for(var l in g)k[l]=g[l];h=null}}();
-(function(){var g=s.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(h,l,m){if(typeof l.getElementsByClassName!=="undefined"&&!m)return l.getElementsByClassName(h[1])};g=null}}})();var E=s.compareDocumentPosition?function(g,h){return!!(g.compareDocumentPosition(h)&16)}:
-function(g,h){return g!==h&&(g.contains?g.contains(h):true)},x=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false},ga=function(g,h){var l=[],m="",q;for(h=h.nodeType?[h]:h;q=n.match.PSEUDO.exec(g);){m+=q[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;q=0;for(var p=h.length;q<p;q++)k(g,h[q],l);return k.filter(m,l)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=a;c.isXMLDoc=x;c.contains=E})();var eb=/Until$/,fb=/^(?:parents|prevUntil|prevAll)/,
-gb=/,/;R=Array.prototype.slice;var Ia=function(a,b,d){if(c.isFunction(b))return c.grep(a,function(e,j){return!!b.call(e,j,e)===d});else if(b.nodeType)return c.grep(a,function(e){return e===b===d});else if(typeof b==="string"){var f=c.grep(a,function(e){return e.nodeType===1});if(Ua.test(b))return c.filter(b,f,!d);else b=c.filter(b,f)}return c.grep(a,function(e){return c.inArray(e,b)>=0===d})};c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,f=0,e=this.length;f<e;f++){d=b.length;
-c.find(a,this[f],b);if(f>0)for(var j=d;j<b.length;j++)for(var i=0;i<d;i++)if(b[i]===b[j]){b.splice(j--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,f=b.length;d<f;d++)if(c.contains(this,b[d]))return true})},not:function(a){return this.pushStack(Ia(this,a,false),"not",a)},filter:function(a){return this.pushStack(Ia(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){if(c.isArray(a)){var d=[],f=this[0],e,j=
-{},i;if(f&&a.length){e=0;for(var o=a.length;e<o;e++){i=a[e];j[i]||(j[i]=c.expr.match.POS.test(i)?c(i,b||this.context):i)}for(;f&&f.ownerDocument&&f!==b;){for(i in j){e=j[i];if(e.jquery?e.index(f)>-1:c(f).is(e)){d.push({selector:i,elem:f});delete j[i]}}f=f.parentNode}}return d}var k=c.expr.match.POS.test(a)?c(a,b||this.context):null;return this.map(function(n,r){for(;r&&r.ownerDocument&&r!==b;){if(k?k.index(r)>-1:c(r).is(a))return r;r=r.parentNode}return null})},index:function(a){if(!a||typeof a===
-"string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){a=typeof a==="string"?c(a,b||this.context):c.makeArray(a);b=c.merge(this.get(),a);return this.pushStack(qa(a[0])||qa(b[0])?b:c.unique(b))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",
-d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?
-a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,f){var e=c.map(this,b,d);eb.test(a)||(f=d);if(f&&typeof f==="string")e=c.filter(f,e);e=this.length>1?c.unique(e):e;if((this.length>1||gb.test(f))&&fb.test(a))e=e.reverse();return this.pushStack(e,a,R.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return c.find.matches(a,b)},dir:function(a,b,d){var f=[];for(a=a[b];a&&a.nodeType!==9&&(d===w||a.nodeType!==1||!c(a).is(d));){a.nodeType===
-1&&f.push(a);a=a[b]}return f},nth:function(a,b,d){b=b||1;for(var f=0;a;a=a[d])if(a.nodeType===1&&++f===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var Ja=/ jQuery\d+="(?:\d+|null)"/g,V=/^\s+/,Ka=/(<([\w:]+)[^>]*?)\/>/g,hb=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,La=/<([\w:]+)/,ib=/<tbody/i,jb=/<|&#?\w+;/,ta=/<script|<object|<embed|<option|<style/i,ua=/checked\s*(?:[^=]|=\s*.checked.)/i,Ma=function(a,b,d){return hb.test(d)?
-a:b+"></"+d+">"},F={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};F.optgroup=F.option;F.tbody=F.tfoot=F.colgroup=F.caption=F.thead;F.th=F.td;if(!c.support.htmlSerialize)F._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
-c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==w)return this.empty().append((this[0]&&this[0].ownerDocument||s).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},
-wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},
-prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,
-this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,f;(f=this[d])!=null;d++)if(!a||c.filter(a,[f]).length){if(!b&&f.nodeType===1){c.cleanData(f.getElementsByTagName("*"));c.cleanData([f])}f.parentNode&&f.parentNode.removeChild(f)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);
-return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,f=this.ownerDocument;if(!d){d=f.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(Ja,"").replace(/=([^="'>\s]+\/)>/g,'="$1">').replace(V,"")],f)[0]}else return this.cloneNode(true)});if(a===true){ra(this,b);ra(this.find("*"),b.find("*"))}return b},html:function(a){if(a===w)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Ja,
-""):null;else if(typeof a==="string"&&!ta.test(a)&&(c.support.leadingWhitespace||!V.test(a))&&!F[(La.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Ka,Ma);try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(f){this.empty().append(a)}}else c.isFunction(a)?this.each(function(e){var j=c(this),i=j.html();j.empty().append(function(){return a.call(this,e,i)})}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&
-this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=c(this),f=d.html();d.replaceWith(a.call(this,b,f))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){function f(u){return c.nodeName(u,"table")?u.getElementsByTagName("tbody")[0]||
-u.appendChild(u.ownerDocument.createElement("tbody")):u}var e,j,i=a[0],o=[],k;if(!c.support.checkClone&&arguments.length===3&&typeof i==="string"&&ua.test(i))return this.each(function(){c(this).domManip(a,b,d,true)});if(c.isFunction(i))return this.each(function(u){var z=c(this);a[0]=i.call(this,u,b?z.html():w);z.domManip(a,b,d)});if(this[0]){e=i&&i.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:sa(a,this,o);k=e.fragment;if(j=k.childNodes.length===
-1?(k=k.firstChild):k.firstChild){b=b&&c.nodeName(j,"tr");for(var n=0,r=this.length;n<r;n++)d.call(b?f(this[n],j):this[n],n>0||e.cacheable||this.length>1?k.cloneNode(true):k)}o.length&&c.each(o,Qa)}return this}});c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var f=[];d=c(d);var e=this.length===1&&this[0].parentNode;if(e&&e.nodeType===11&&e.childNodes.length===1&&d.length===1){d[b](this[0]);
-return this}else{e=0;for(var j=d.length;e<j;e++){var i=(e>0?this.clone(true):this).get();c.fn[b].apply(c(d[e]),i);f=f.concat(i)}return this.pushStack(f,a,d.selector)}}});c.extend({clean:function(a,b,d,f){b=b||s;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||s;for(var e=[],j=0,i;(i=a[j])!=null;j++){if(typeof i==="number")i+="";if(i){if(typeof i==="string"&&!jb.test(i))i=b.createTextNode(i);else if(typeof i==="string"){i=i.replace(Ka,Ma);var o=(La.exec(i)||["",
-""])[1].toLowerCase(),k=F[o]||F._default,n=k[0],r=b.createElement("div");for(r.innerHTML=k[1]+i+k[2];n--;)r=r.lastChild;if(!c.support.tbody){n=ib.test(i);o=o==="table"&&!n?r.firstChild&&r.firstChild.childNodes:k[1]==="<table>"&&!n?r.childNodes:[];for(k=o.length-1;k>=0;--k)c.nodeName(o[k],"tbody")&&!o[k].childNodes.length&&o[k].parentNode.removeChild(o[k])}!c.support.leadingWhitespace&&V.test(i)&&r.insertBefore(b.createTextNode(V.exec(i)[0]),r.firstChild);i=r.childNodes}if(i.nodeType)e.push(i);else e=
-c.merge(e,i)}}if(d)for(j=0;e[j];j++)if(f&&c.nodeName(e[j],"script")&&(!e[j].type||e[j].type.toLowerCase()==="text/javascript"))f.push(e[j].parentNode?e[j].parentNode.removeChild(e[j]):e[j]);else{e[j].nodeType===1&&e.splice.apply(e,[j+1,0].concat(c.makeArray(e[j].getElementsByTagName("script"))));d.appendChild(e[j])}return e},cleanData:function(a){for(var b,d,f=c.cache,e=c.event.special,j=c.support.deleteExpando,i=0,o;(o=a[i])!=null;i++)if(d=o[c.expando]){b=f[d];if(b.events)for(var k in b.events)e[k]?
-c.event.remove(o,k):Ca(o,k,b.handle);if(j)delete o[c.expando];else o.removeAttribute&&o.removeAttribute(c.expando);delete f[d]}}});var kb=/z-?index|font-?weight|opacity|zoom|line-?height/i,Na=/alpha\([^)]*\)/,Oa=/opacity=([^)]*)/,ha=/float/i,ia=/-([a-z])/ig,lb=/([A-Z])/g,mb=/^-?\d+(?:px)?$/i,nb=/^-?\d/,ob={position:"absolute",visibility:"hidden",display:"block"},pb=["Left","Right"],qb=["Top","Bottom"],rb=s.defaultView&&s.defaultView.getComputedStyle,Pa=c.support.cssFloat?"cssFloat":"styleFloat",ja=
-function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){return X(this,a,b,true,function(d,f,e){if(e===w)return c.curCSS(d,f);if(typeof e==="number"&&!kb.test(f))e+="px";c.style(d,f,e)})};c.extend({style:function(a,b,d){if(!a||a.nodeType===3||a.nodeType===8)return w;if((b==="width"||b==="height")&&parseFloat(d)<0)d=w;var f=a.style||a,e=d!==w;if(!c.support.opacity&&b==="opacity"){if(e){f.zoom=1;b=parseInt(d,10)+""==="NaN"?"":"alpha(opacity="+d*100+")";a=f.filter||c.curCSS(a,"filter")||"";f.filter=
-Na.test(a)?a.replace(Na,b):b}return f.filter&&f.filter.indexOf("opacity=")>=0?parseFloat(Oa.exec(f.filter)[1])/100+"":""}if(ha.test(b))b=Pa;b=b.replace(ia,ja);if(e)f[b]=d;return f[b]},css:function(a,b,d,f){if(b==="width"||b==="height"){var e,j=b==="width"?pb:qb;function i(){e=b==="width"?a.offsetWidth:a.offsetHeight;f!=="border"&&c.each(j,function(){f||(e-=parseFloat(c.curCSS(a,"padding"+this,true))||0);if(f==="margin")e+=parseFloat(c.curCSS(a,"margin"+this,true))||0;else e-=parseFloat(c.curCSS(a,
-"border"+this+"Width",true))||0})}a.offsetWidth!==0?i():c.swap(a,ob,i);return Math.max(0,Math.round(e))}return c.curCSS(a,b,d)},curCSS:function(a,b,d){var f,e=a.style;if(!c.support.opacity&&b==="opacity"&&a.currentStyle){f=Oa.test(a.currentStyle.filter||"")?parseFloat(RegExp.$1)/100+"":"";return f===""?"1":f}if(ha.test(b))b=Pa;if(!d&&e&&e[b])f=e[b];else if(rb){if(ha.test(b))b="float";b=b.replace(lb,"-$1").toLowerCase();e=a.ownerDocument.defaultView;if(!e)return null;if(a=e.getComputedStyle(a,null))f=
-a.getPropertyValue(b);if(b==="opacity"&&f==="")f="1"}else if(a.currentStyle){d=b.replace(ia,ja);f=a.currentStyle[b]||a.currentStyle[d];if(!mb.test(f)&&nb.test(f)){b=e.left;var j=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;e.left=d==="fontSize"?"1em":f||0;f=e.pixelLeft+"px";e.left=b;a.runtimeStyle.left=j}}return f},swap:function(a,b,d){var f={};for(var e in b){f[e]=a.style[e];a.style[e]=b[e]}d.call(a);for(e in b)a.style[e]=f[e]}});if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=
-a.offsetWidth,d=a.offsetHeight,f=a.nodeName.toLowerCase()==="tr";return b===0&&d===0&&!f?true:b>0&&d>0&&!f?false:c.curCSS(a,"display")==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var sb=J(),tb=/<script(.|\s)*?\/script>/gi,ub=/select|textarea/i,vb=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,N=/=\?(&|$)/,ka=/\?/,wb=/(\?|&)_=.*?(&|$)/,xb=/^(\w+:)?\/\/([^\/?#]+)/,yb=/%20/g,zb=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!==
-"string")return zb.call(this,a);else if(!this.length)return this;var f=a.indexOf(" ");if(f>=0){var e=a.slice(f,a.length);a=a.slice(0,f)}f="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);f="POST"}var j=this;c.ajax({url:a,type:f,dataType:"html",data:b,complete:function(i,o){if(o==="success"||o==="notmodified")j.html(e?c("<div />").append(i.responseText.replace(tb,"")).find(e):i.responseText);d&&j.each(d,[i.responseText,o,i])}});return this},
-serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ub.test(this.nodeName)||vb.test(this.type))}).map(function(a,b){a=c(this).val();return a==null?null:c.isArray(a)?c.map(a,function(d){return{name:b.name,value:d}}):{name:b.name,value:a}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),
-function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:f})},getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:f})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,
-global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:A.XMLHttpRequest&&(A.location.protocol!=="file:"||!A.ActiveXObject)?function(){return new A.XMLHttpRequest}:function(){try{return new A.ActiveXObject("Microsoft.XMLHTTP")}catch(a){}},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},etag:{},ajax:function(a){function b(){e.success&&
-e.success.call(k,o,i,x);e.global&&f("ajaxSuccess",[x,e])}function d(){e.complete&&e.complete.call(k,x,i);e.global&&f("ajaxComplete",[x,e]);e.global&&!--c.active&&c.event.trigger("ajaxStop")}function f(q,p){(e.context?c(e.context):c.event).trigger(q,p)}var e=c.extend(true,{},c.ajaxSettings,a),j,i,o,k=a&&a.context||e,n=e.type.toUpperCase();if(e.data&&e.processData&&typeof e.data!=="string")e.data=c.param(e.data,e.traditional);if(e.dataType==="jsonp"){if(n==="GET")N.test(e.url)||(e.url+=(ka.test(e.url)?
-"&":"?")+(e.jsonp||"callback")+"=?");else if(!e.data||!N.test(e.data))e.data=(e.data?e.data+"&":"")+(e.jsonp||"callback")+"=?";e.dataType="json"}if(e.dataType==="json"&&(e.data&&N.test(e.data)||N.test(e.url))){j=e.jsonpCallback||"jsonp"+sb++;if(e.data)e.data=(e.data+"").replace(N,"="+j+"$1");e.url=e.url.replace(N,"="+j+"$1");e.dataType="script";A[j]=A[j]||function(q){o=q;b();d();A[j]=w;try{delete A[j]}catch(p){}z&&z.removeChild(C)}}if(e.dataType==="script"&&e.cache===null)e.cache=false;if(e.cache===
-false&&n==="GET"){var r=J(),u=e.url.replace(wb,"$1_="+r+"$2");e.url=u+(u===e.url?(ka.test(e.url)?"&":"?")+"_="+r:"")}if(e.data&&n==="GET")e.url+=(ka.test(e.url)?"&":"?")+e.data;e.global&&!c.active++&&c.event.trigger("ajaxStart");r=(r=xb.exec(e.url))&&(r[1]&&r[1]!==location.protocol||r[2]!==location.host);if(e.dataType==="script"&&n==="GET"&&r){var z=s.getElementsByTagName("head")[0]||s.documentElement,C=s.createElement("script");C.src=e.url;if(e.scriptCharset)C.charset=e.scriptCharset;if(!j){var B=
-false;C.onload=C.onreadystatechange=function(){if(!B&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){B=true;b();d();C.onload=C.onreadystatechange=null;z&&C.parentNode&&z.removeChild(C)}}}z.insertBefore(C,z.firstChild);return w}var E=false,x=e.xhr();if(x){e.username?x.open(n,e.url,e.async,e.username,e.password):x.open(n,e.url,e.async);try{if(e.data||a&&a.contentType)x.setRequestHeader("Content-Type",e.contentType);if(e.ifModified){c.lastModified[e.url]&&x.setRequestHeader("If-Modified-Since",
-c.lastModified[e.url]);c.etag[e.url]&&x.setRequestHeader("If-None-Match",c.etag[e.url])}r||x.setRequestHeader("X-Requested-With","XMLHttpRequest");x.setRequestHeader("Accept",e.dataType&&e.accepts[e.dataType]?e.accepts[e.dataType]+", */*":e.accepts._default)}catch(ga){}if(e.beforeSend&&e.beforeSend.call(k,x,e)===false){e.global&&!--c.active&&c.event.trigger("ajaxStop");x.abort();return false}e.global&&f("ajaxSend",[x,e]);var g=x.onreadystatechange=function(q){if(!x||x.readyState===0||q==="abort"){E||
-d();E=true;if(x)x.onreadystatechange=c.noop}else if(!E&&x&&(x.readyState===4||q==="timeout")){E=true;x.onreadystatechange=c.noop;i=q==="timeout"?"timeout":!c.httpSuccess(x)?"error":e.ifModified&&c.httpNotModified(x,e.url)?"notmodified":"success";var p;if(i==="success")try{o=c.httpData(x,e.dataType,e)}catch(v){i="parsererror";p=v}if(i==="success"||i==="notmodified")j||b();else c.handleError(e,x,i,p);d();q==="timeout"&&x.abort();if(e.async)x=null}};try{var h=x.abort;x.abort=function(){x&&h.call(x);
-g("abort")}}catch(l){}e.async&&e.timeout>0&&setTimeout(function(){x&&!E&&g("timeout")},e.timeout);try{x.send(n==="POST"||n==="PUT"||n==="DELETE"?e.data:null)}catch(m){c.handleError(e,x,null,m);d()}e.async||g();return x}},handleError:function(a,b,d,f){if(a.error)a.error.call(a.context||a,b,d,f);if(a.global)(a.context?c(a.context):c.event).trigger("ajaxError",[b,a,f])},active:0,httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===
-1223||a.status===0}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),f=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(f)c.etag[b]=f;return a.status===304||a.status===0},httpData:function(a,b,d){var f=a.getResponseHeader("content-type")||"",e=b==="xml"||!b&&f.indexOf("xml")>=0;a=e?a.responseXML:a.responseText;e&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b===
-"json"||!b&&f.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&f.indexOf("javascript")>=0)c.globalEval(a);return a},param:function(a,b){function d(i,o){if(c.isArray(o))c.each(o,function(k,n){b||/\[\]$/.test(i)?f(i,n):d(i+"["+(typeof n==="object"||c.isArray(n)?k:"")+"]",n)});else!b&&o!=null&&typeof o==="object"?c.each(o,function(k,n){d(i+"["+k+"]",n)}):f(i,o)}function f(i,o){o=c.isFunction(o)?o():o;e[e.length]=encodeURIComponent(i)+"="+encodeURIComponent(o)}var e=[];if(b===w)b=c.ajaxSettings.traditional;
-if(c.isArray(a)||a.jquery)c.each(a,function(){f(this.name,this.value)});else for(var j in a)d(j,a[j]);return e.join("&").replace(yb,"+")}});var la={},Ab=/toggle|show|hide/,Bb=/^([+-]=)?([\d+-.]+)(.*)$/,W,va=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b){if(a||a===0)return this.animate(K("show",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");
-this[a].style.display=d||"";if(c.css(this[a],"display")==="none"){d=this[a].nodeName;var f;if(la[d])f=la[d];else{var e=c("<"+d+" />").appendTo("body");f=e.css("display");if(f==="none")f="block";e.remove();la[d]=f}c.data(this[a],"olddisplay",f)}}a=0;for(b=this.length;a<b;a++)this[a].style.display=c.data(this[a],"olddisplay")||"";return this}},hide:function(a,b){if(a||a===0)return this.animate(K("hide",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");!d&&d!=="none"&&c.data(this[a],
-"olddisplay",c.css(this[a],"display"))}a=0;for(b=this.length;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b){var d=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||d?this.each(function(){var f=d?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(K("toggle",3),a,b);return this},fadeTo:function(a,b,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d)},
-animate:function(a,b,d,f){var e=c.speed(b,d,f);if(c.isEmptyObject(a))return this.each(e.complete);return this[e.queue===false?"each":"queue"](function(){var j=c.extend({},e),i,o=this.nodeType===1&&c(this).is(":hidden"),k=this;for(i in a){var n=i.replace(ia,ja);if(i!==n){a[n]=a[i];delete a[i];i=n}if(a[i]==="hide"&&o||a[i]==="show"&&!o)return j.complete.call(this);if((i==="height"||i==="width")&&this.style){j.display=c.css(this,"display");j.overflow=this.style.overflow}if(c.isArray(a[i])){(j.specialEasing=
-j.specialEasing||{})[i]=a[i][1];a[i]=a[i][0]}}if(j.overflow!=null)this.style.overflow="hidden";j.curAnim=c.extend({},a);c.each(a,function(r,u){var z=new c.fx(k,j,r);if(Ab.test(u))z[u==="toggle"?o?"show":"hide":u](a);else{var C=Bb.exec(u),B=z.cur(true)||0;if(C){u=parseFloat(C[2]);var E=C[3]||"px";if(E!=="px"){k.style[r]=(u||1)+E;B=(u||1)/z.cur(true)*B;k.style[r]=B+E}if(C[1])u=(C[1]==="-="?-1:1)*u+B;z.custom(B,u,E)}else z.custom(B,u,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);
-this.each(function(){for(var f=d.length-1;f>=0;f--)if(d[f].elem===this){b&&d[f](true);d.splice(f,1)}});b||this.dequeue();return this}});c.each({slideDown:K("show",1),slideUp:K("hide",1),slideToggle:K("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,f){return this.animate(b,d,f)}});c.extend({speed:function(a,b,d){var f=a&&typeof a==="object"?a:{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};f.duration=c.fx.off?0:typeof f.duration===
-"number"?f.duration:c.fx.speeds[f.duration]||c.fx.speeds._default;f.old=f.complete;f.complete=function(){f.queue!==false&&c(this).dequeue();c.isFunction(f.old)&&f.old.call(this)};return f},easing:{linear:function(a,b,d,f){return d+f*a},swing:function(a,b,d,f){return(-Math.cos(a*Math.PI)/2+0.5)*f+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||
-c.fx.step._default)(this);if((this.prop==="height"||this.prop==="width")&&this.elem.style)this.elem.style.display="block"},cur:function(a){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];return(a=parseFloat(c.css(this.elem,this.prop,a)))&&a>-10000?a:parseFloat(c.curCSS(this.elem,this.prop))||0},custom:function(a,b,d){function f(j){return e.step(j)}this.startTime=J();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;
-this.pos=this.state=0;var e=this;f.elem=this.elem;if(f()&&c.timers.push(f)&&!W)W=setInterval(c.fx.tick,13)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(a){var b=J(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=
-this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var f in this.options.curAnim)if(this.options.curAnim[f]!==true)d=false;if(d){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;a=c.data(this.elem,"olddisplay");this.elem.style.display=a?a:this.options.display;if(c.css(this.elem,"display")==="none")this.elem.style.display="block"}this.options.hide&&c(this.elem).hide();if(this.options.hide||this.options.show)for(var e in this.options.curAnim)c.style(this.elem,
-e,this.options.orig[e]);this.options.complete.call(this.elem)}return false}else{e=b-this.startTime;this.state=e/this.options.duration;a=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||a](this.state,e,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||
-c.fx.stop()},stop:function(){clearInterval(W);W=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===b.elem}).length};c.fn.offset="getBoundingClientRect"in s.documentElement?
-function(a){var b=this[0];if(a)return this.each(function(e){c.offset.setOffset(this,a,e)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);var d=b.getBoundingClientRect(),f=b.ownerDocument;b=f.body;f=f.documentElement;return{top:d.top+(self.pageYOffset||c.support.boxModel&&f.scrollTop||b.scrollTop)-(f.clientTop||b.clientTop||0),left:d.left+(self.pageXOffset||c.support.boxModel&&f.scrollLeft||b.scrollLeft)-(f.clientLeft||b.clientLeft||0)}}:function(a){var b=
-this[0];if(a)return this.each(function(r){c.offset.setOffset(this,a,r)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d=b.offsetParent,f=b,e=b.ownerDocument,j,i=e.documentElement,o=e.body;f=(e=e.defaultView)?e.getComputedStyle(b,null):b.currentStyle;for(var k=b.offsetTop,n=b.offsetLeft;(b=b.parentNode)&&b!==o&&b!==i;){if(c.offset.supportsFixedPosition&&f.position==="fixed")break;j=e?e.getComputedStyle(b,null):b.currentStyle;
-k-=b.scrollTop;n-=b.scrollLeft;if(b===d){k+=b.offsetTop;n+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(b.nodeName))){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=d;d=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&j.overflow!=="visible"){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=j}if(f.position==="relative"||f.position==="static"){k+=o.offsetTop;n+=o.offsetLeft}if(c.offset.supportsFixedPosition&&
-f.position==="fixed"){k+=Math.max(i.scrollTop,o.scrollTop);n+=Math.max(i.scrollLeft,o.scrollLeft)}return{top:k,left:n}};c.offset={initialize:function(){var a=s.body,b=s.createElement("div"),d,f,e,j=parseFloat(c.curCSS(a,"marginTop",true))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";
-a.insertBefore(b,a.firstChild);d=b.firstChild;f=d.firstChild;e=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=f.offsetTop!==5;this.doesAddBorderForTableAndCells=e.offsetTop===5;f.style.position="fixed";f.style.top="20px";this.supportsFixedPosition=f.offsetTop===20||f.offsetTop===15;f.style.position=f.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=f.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==j;a.removeChild(b);
-c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.curCSS(a,"marginTop",true))||0;d+=parseFloat(c.curCSS(a,"marginLeft",true))||0}return{top:b,left:d}},setOffset:function(a,b,d){if(/static/.test(c.curCSS(a,"position")))a.style.position="relative";var f=c(a),e=f.offset(),j=parseInt(c.curCSS(a,"top",true),10)||0,i=parseInt(c.curCSS(a,"left",true),10)||0;if(c.isFunction(b))b=b.call(a,
-d,e);d={top:b.top-e.top+j,left:b.left-e.left+i};"using"in b?b.using.call(a,d):f.css(d)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),f=/^body|html$/i.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.curCSS(a,"marginTop",true))||0;d.left-=parseFloat(c.curCSS(a,"marginLeft",true))||0;f.top+=parseFloat(c.curCSS(b[0],"borderTopWidth",true))||0;f.left+=parseFloat(c.curCSS(b[0],"borderLeftWidth",true))||0;return{top:d.top-
-f.top,left:d.left-f.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||s.body;a&&!/^body|html$/i.test(a.nodeName)&&c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(f){var e=this[0],j;if(!e)return null;if(f!==w)return this.each(function(){if(j=wa(this))j.scrollTo(!a?f:c(j).scrollLeft(),a?f:c(j).scrollTop());else this[d]=f});else return(j=wa(e))?"pageXOffset"in j?j[a?"pageYOffset":
-"pageXOffset"]:c.support.boxModel&&j.document.documentElement[d]||j.document.body[d]:e[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();c.fn["inner"+b]=function(){return this[0]?c.css(this[0],d,false,"padding"):null};c.fn["outer"+b]=function(f){return this[0]?c.css(this[0],d,false,f?"margin":"border"):null};c.fn[d]=function(f){var e=this[0];if(!e)return f==null?null:this;if(c.isFunction(f))return this.each(function(j){var i=c(this);i[d](f.call(this,j,i[d]()))});return"scrollTo"in
-e&&e.document?e.document.compatMode==="CSS1Compat"&&e.document.documentElement["client"+b]||e.document.body["client"+b]:e.nodeType===9?Math.max(e.documentElement["client"+b],e.body["scroll"+b],e.documentElement["scroll"+b],e.body["offset"+b],e.documentElement["offset"+b]):f===w?c.css(e,d):this.css(d,typeof f==="string"?f:f+"px")}});A.jQuery=A.$=c})(window);
View
439 index/msgpack.css
@@ -1,439 +0,0 @@
-.clearfix:after, .container:after, #navi:after {
- content: "\0020";
- display: block;
- height: 0;
- clear: both;
- visibility: hidden;
- overflow: hidden;
-}
-
-ul, ol {
- margin: 0 1.5em 1.5em 1.5em;
-}
-
-li {
- font-size: 110%;
- margin-bottom: 0.3em;
-}
-
-p {
- margin: 0 0 0.8em 0;
- font-size: 105%;
- line-height: 160%;
-}
-
-h2 {
- background: #28252f url(headline2.png) repeat-x;
- height: 32px; /* 42px - 10px */
- font-size: 150%;
- color: #fff;
- padding-left: 15px;
- padding-top: 10px;
- margin: 0.5em 0 0 0;
- font-weight: normal;
-}
-
-h2#Abstruct {
- background: #28252f url(headline1.png) repeat-x;
- height: 43px; /* 55px - 12px */
- font-size: 200%;
- color: #fff;
- padding-left: 15px;
- padding-top: 12px;
- margin: 5px 0 0 0;
- font-weight: normal;
- letter-spacing: 0.05em;
-
- width: 994px;
- margin-left: auto;
- margin-right: auto;
- padding-left: 30px;
-}
-