Commit a06e5d7d5352be7b33d04622408640fd3a6357d6

First version of working swtr. Image Annotation.

  The first working version only does image annotation and shows related
annotations. More improvements to come.
.gitignore
(1 / 0)
  
1conf.py
README
(26 / 0)
  
1Swtr
2====
3
4Swtr app is the Sweet Maker and Sweet Swagger app together.
5In other words, this the definitive client side application for sweets.
6
7Installing
8==========
9
10In this directory, run
11
12$ python setup.py install
13
14Running in Dev Mode
15===================
16
17Configure options in config file and
18
19$ python swtr/server.py
20
21then navigate to the URL in your browser
22
23Deployment
24==========
25
26See deploying flask apps
  
1/** Global item styles **/
2
3.annotorious-opacity-fade {
4 -moz-transition-property: opacity;
5 -moz-transition-duration: 0.5s;
6 -moz-transition-delay: 0s;
7 -webkit-transition-property: opacity;
8 -webkit-transition-duration: 0.5s;
9 -webkit-transition-delay: 0s;
10 -o-transition-property: opacity;
11 -o-transition-duration: 0.5s;
12 -o-transition-delay: 0s;
13 transition-property: opacity;
14 transition-duration: 0.5s;
15 transition-delay: 0s;
16}
17
18.annotorious-item-focus {
19 opacity:1.0;
20}
21
22.annotorious-item-unfocus {
23 opacity:0.4;
24}
25
26/** Hint/help popup **/
27
28.annotorious-hint-msg {
29 background-color:rgba(0,0,0,0.5);
30 margin:4px;
31 padding:8px 15px 8px 30px;
32 font-family: 'lucida grande',tahoma,verdana,arial,sans-serif;
33 line-height: normal;
34 font-size:12px;
35 color:#fff;
36 border-radius:4px;
37 -moz-border-radius:4px;
38 -webkit-border-radius:4px;
39 -khtml-border-radius:4px;
40}
41
42.annotorious-hint-icon {
43 position:absolute;
44 top:6px;
45 left: 5px;
46 background:url('feather_icon.png');
47 background-repeat:no-repeat;
48 width:19px;
49 height:22px;
50 margin:2px 4px 0px 6px;
51}
52
53/** Popup **/
54
55.annotorious-popup {
56 line-height:135%;
57 font-family:Arial, Verdana, Sans;
58 font-size:12px;
59 color:#000;
60 background-color:#fff;
61 border:1px solid #ccc;
62 padding:9px 8px;
63 word-wrap:break-word;
64 width:180px;
65 border-radius: 3px;
66 -moz-border-radius: 3px;
67 -webkit-border-radius: 3px;
68 -khtml-border-radius: 3px;
69 -moz-box-shadow:0px 5px 15px #111;
70 -webkit-box-shadow:0px 5px 15px #111;
71 box-shadow:0px 5px 15px #111;
72
73 -moz-transition-property: opacity;
74 -moz-transition-duration: 0.5s;
75 -moz-transition-delay: 0s;
76 -webkit-transition-property: opacity;
77 -webkit-transition-duration: 0.5s;
78 -webkit-transition-delay: 0s;
79 -o-transition-property: opacity;
80 -o-transition-duration: 0.5s;
81 -o-transition-delay: 0s;
82 transition-property: opacity;
83 transition-duration: 0.5s;
84 transition-delay: 0s;
85}
86
87.annotorious-popup-empty {
88 color:#999;
89 font-style:italic;
90}
91
92.annotorious-popup-buttons {
93 float:right;
94 margin:0px 0px 1px 10px;
95 height:16px;
96
97 -moz-transition-property: opacity;
98 -moz-transition-duration: 1s;
99 -moz-transition-delay: 0s;
100 -webkit-transition-property: opacity;
101 -webkit-transition-duration: 1s;
102 -webkit-transition-delay: 0s;
103 -o-transition-property: opacity;
104 -o-transition-duration: 1s;
105 -o-transition-delay: 0s;
106 transition-property: opacity;
107 transition-duration: 1s;
108 transition-delay: 0s;
109}
110
111.annotorious-popup-button {
112 font-size:10px;
113 text-decoration:none;
114 display:inline-block;
115 color:#000;
116 font-weight:bold;
117 margin-left:5px;
118 opacity:0.4;
119
120 -moz-transition-property: opacity;
121 -moz-transition-duration: 0.5s;
122 -moz-transition-delay: 0s;
123 -webkit-transition-property: opacity;
124 -webkit-transition-duration: 0.5s;
125 -webkit-transition-delay: 0s;
126 -o-transition-property: opacity;
127 -o-transition-duration: 0.5s;
128 -o-transition-delay: 0s;
129 transition-property: opacity;
130 transition-duration: 0.5s;
131 transition-delay: 0s;
132}
133
134.annotorious-popup-button:hover {
135 background-color:transparent;
136}
137
138.annotorious-popup-button-active {
139 opacity:0.9;
140}
141
142.annotorious-popup-button-edit {
143 background:url(pencil.png);
144 width:16px;
145 height:16px;
146 text-indent:100px;
147 overflow:hidden;
148}
149
150.annotorious-popup-button-delete {
151 background:url(delete.png);
152 width:16px;
153 height:16px;
154 text-indent:100px;
155 overflow:hidden;
156 float:right;
157}
158
159.annotorious-popup-field {
160 border-top:1px solid #ccc;
161 margin:6px 0px 0px 0px;
162 padding-top:2px;
163}
164
165/** Editor **/
166
167.annotorious-editor {
168 line-height: normal;
169 padding:0px 0px 2px 0px;
170 background-color:#f2f2f2;
171 color:#000;
172 opacity:0.97;
173 border:1px solid #ccc;
174 border-radius: 3px;
175 -moz-border-radius: 3px;
176 -webkit-border-radius: 3px;
177 -khtml-border-radius: 3px;
178 -moz-box-shadow:0px 5px 15px #111;
179 -webkit-box-shadow:0px 5px 15px #111;
180 box-shadow:0px 5px 15px #111;
181}
182
183.annotorious-editor-text {
184 border-width:0px 0px 1px 0px;
185 border-style:solid;
186 border-color:#ccc;
187 line-height: normal;
188 background-color:#fff;
189 width:240px;
190 height:50px;
191 outline:none;
192 font-family:Verdana, Arial;
193 font-size:11px;
194 padding:4px;
195 margin:0px;
196 color:#000;
197 text-shadow:none;
198 overflow-y:auto;
199 display:block;
200}
201
202.annotorious-editor-button-container {
203 padding-top:2px;
204}
205
206.annotorious-editor-button {
207 float:right;
208 line-height: normal;
209 display:inline-block;
210 text-align:center;
211 text-decoration:none;
212 font-family:Verdana, Arial;
213 font-size:10px;
214 border:1px solid #777;
215 color:#ddd;
216 padding:3px 8px;
217 margin:1px 2px 0px 1px;
218 cursor:pointer;
219 cursor:hand;
220 background:-webkit-gradient(linear, left top, left bottom, from(#888), to(#555));
221 background:-moz-linear-gradient(top, #888, #555);
222 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#888888', endColorstr='#555555');
223 -moz-border-radius:2px;
224 -webkit-border-radius:2px;
225 -khtml-border-radius:2px;
226 border-radius:2px;
227}
228
229.annotorious-editor-button:hover {
230 background:#999;
231}
232
233.annotorious-editor-field {
234 border-bottom:1px solid #ccc;
235 margin:0px;
236 background-color:#fff;
237 padding:3px;
238 font-family:Verdana, Arial;
239 font-size:12px;
240}
241
242/** OpenLayers module **/
243.annotorious-ol-boxmarker-outer {
244 border:1px solid #000;
245}
246
247.annotorious-ol-boxmarker-inner {
248 border:1px solid #fff;
249 -webkit-box-sizing: border-box;
250 -moz-box-sizing: border-box;
251 -ms-box-sizing: border-box;
252 box-sizing: border-box;
253}
254
255.annotorious-ol-hint {
256 line-height: normal;
257 font-family:Arial, Verdana, Sans;
258 font-size:16px;
259 color:#000;
260 background-color:#fff;
261 margin:0px;
262 padding:9px;
263 border-radius: 5px;
264 -moz-border-radius: 5px;
265 -webkit-border-radius: 5px;
266 -khtml-border-radius: 5px;
267}
268
269.annotorious-ol-hint-secondary {
270 background-color:#fff000;
271}
272
273canvas {
274 z-index: 2;
275}
276
277canvas.hidden {
278 z-index: -1;
279 visibility: hidden;
280}
281
282html.hasTouch .annotator-viewer li .annotator-controls,
283html.hasTouch .annotator-viewer li .annotator-controls {
284 opacity: 1;
285}
Binary files differ
Binary files differ
Binary files differ
  
1#swt-maker {
2 margin: 100px auto;
3 width: 800px;
4 height: 500px;
5}
6#img-annotation-wrapper {
7 margin-top: 30px;
8 border: 1px solid black;
9 height: 500px;
10 width: 800px
11}
12#annotatable-img {
13}
index.html
(0 / 48)
  
1<!doctype html>
2<html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
6 <title>Sweet Maker</title>
7
8 <meta name="description" content="Sweet Maker, Social, Semantic, Web, Decentralized, Makes Sweet">
9 <meta name="author" content="Anon Ray">
10 <link href="css/annotorious.css" rel="stylesheet">
11 <link href="css/swtmaker.css" rel="stylesheet">
12 </head>
13 <body>
14
15 <div id="swt-maker">
16 <div id="helpview"></div>
17 <div id="sweet-list"></div>
18 <div id="sweet-button"></div>
19 <div id="img-input">
20 <input type="text" placeholder="Enter URL of the image"
21 id="img-url-input" size="80">
22 <input type="submit" value="Go" id="img-url-submit">
23 </div>
24 <div id="img-annotation-wrapper">
25 <img src="" id="annotatable-img">
26 </div>
27 </div>
28
29 <script>
30 window.swtmkr = window.swtmkr || {};
31 window.onload = function() {
32 swtmkr.init();
33 };
34 </script>
35 <script src="js/lib/jquery-1.10.2.min.js"></script>
36 <script src="js/lib/annotorious.debug.js"></script>
37 <script src="js/lib/underscore-1.5.2.min.js"></script>
38 <script src="js/lib/backbone-1.0.0.min.js"></script>
39 <script src="js/swtmaker.js"></script>
40
41 <script type="text/template" id="sweet-template">
42 <div class="sweet">
43 <a href="#">@<%= who %></a> <strong>#<%= what %></strong> /<%= where %>
44 <%= how %>
45 </div>
46 </script>
47 </body>
48</html>
  
1function $JSCompiler_alias_THROW$$($jscomp_throw_param$$) {
2 throw $jscomp_throw_param$$;
3}
4var $JSCompiler_alias_VOID$$ = void 0, $JSCompiler_alias_TRUE$$ = !0, $JSCompiler_alias_NULL$$ = null, $JSCompiler_alias_FALSE$$ = !1;
5function $JSCompiler_emptyFn$$() {
6 return function() {
7 }
8}
9function $JSCompiler_get$$($JSCompiler_get_name$$) {
10 return function() {
11 return this[$JSCompiler_get_name$$]
12 }
13}
14function $JSCompiler_returnArg$$($JSCompiler_returnArg_value$$) {
15 return function() {
16 return $JSCompiler_returnArg_value$$
17 }
18}
19var $JSCompiler_prototypeAlias$$, $goog$global$$ = this;
20function $goog$exportPath_$$($name$$57$$, $opt_object$$) {
21 var $parts$$ = $name$$57$$.split("."), $cur$$ = $goog$global$$;
22 !($parts$$[0] in $cur$$) && $cur$$.execScript && $cur$$.execScript("var " + $parts$$[0]);
23 for(var $part$$;$parts$$.length && ($part$$ = $parts$$.shift());) {
24 !$parts$$.length && $goog$isDef$$($opt_object$$) ? $cur$$[$part$$] = $opt_object$$ : $cur$$ = $cur$$[$part$$] ? $cur$$[$part$$] : $cur$$[$part$$] = {}
25 }
26}
27function $goog$nullFunction$$() {
28}
29function $goog$addSingletonGetter$$($ctor$$) {
30 $ctor$$.$getInstance$ = function $$ctor$$$$getInstance$$() {
31 return $ctor$$.$instance_$ ? $ctor$$.$instance_$ : $ctor$$.$instance_$ = new $ctor$$
32 }
33}
34function $goog$typeOf$$($value$$39$$) {
35 var $s$$2$$ = typeof $value$$39$$;
36 if("object" == $s$$2$$) {
37 if($value$$39$$) {
38 if($value$$39$$ instanceof Array) {
39 return"array"
40 }
41 if($value$$39$$ instanceof Object) {
42 return $s$$2$$
43 }
44 var $className$$1$$ = Object.prototype.toString.call($value$$39$$);
45 if("[object Window]" == $className$$1$$) {
46 return"object"
47 }
48 if("[object Array]" == $className$$1$$ || "number" == typeof $value$$39$$.length && "undefined" != typeof $value$$39$$.splice && "undefined" != typeof $value$$39$$.propertyIsEnumerable && !$value$$39$$.propertyIsEnumerable("splice")) {
49 return"array"
50 }
51 if("[object Function]" == $className$$1$$ || "undefined" != typeof $value$$39$$.call && "undefined" != typeof $value$$39$$.propertyIsEnumerable && !$value$$39$$.propertyIsEnumerable("call")) {
52 return"function"
53 }
54 }else {
55 return"null"
56 }
57 }else {
58 if("function" == $s$$2$$ && "undefined" == typeof $value$$39$$.call) {
59 return"object"
60 }
61 }
62 return $s$$2$$
63}
64function $goog$isDef$$($val$$) {
65 return $val$$ !== $JSCompiler_alias_VOID$$
66}
67function $goog$isArray$$($val$$3$$) {
68 return"array" == $goog$typeOf$$($val$$3$$)
69}
70function $goog$isArrayLike$$($val$$4$$) {
71 var $type$$50$$ = $goog$typeOf$$($val$$4$$);
72 return"array" == $type$$50$$ || "object" == $type$$50$$ && "number" == typeof $val$$4$$.length
73}
74function $goog$isString$$($val$$6$$) {
75 return"string" == typeof $val$$6$$
76}
77function $goog$isFunction$$($val$$9$$) {
78 return"function" == $goog$typeOf$$($val$$9$$)
79}
80function $goog$isObject$$($val$$10$$) {
81 var $type$$51$$ = typeof $val$$10$$;
82 return"object" == $type$$51$$ && $val$$10$$ != $JSCompiler_alias_NULL$$ || "function" == $type$$51$$
83}
84function $goog$getUid$$($obj$$17$$) {
85 return $obj$$17$$[$goog$UID_PROPERTY_$$] || ($obj$$17$$[$goog$UID_PROPERTY_$$] = ++$goog$uidCounter_$$)
86}
87var $goog$UID_PROPERTY_$$ = "closure_uid_" + Math.floor(2147483648 * Math.random()).toString(36), $goog$uidCounter_$$ = 0;
88function $goog$bindNative_$$($fn$$, $selfObj$$1$$, $var_args$$24$$) {
89 return $fn$$.call.apply($fn$$.bind, arguments)
90}
91function $goog$bindJs_$$($fn$$1$$, $selfObj$$2$$, $var_args$$25$$) {
92 $fn$$1$$ || $JSCompiler_alias_THROW$$(Error());
93 if(2 < arguments.length) {
94 var $boundArgs$$ = Array.prototype.slice.call(arguments, 2);
95 return function() {
96 var $newArgs$$ = Array.prototype.slice.call(arguments);
97 Array.prototype.unshift.apply($newArgs$$, $boundArgs$$);
98 return $fn$$1$$.apply($selfObj$$2$$, $newArgs$$)
99 }
100 }
101 return function() {
102 return $fn$$1$$.apply($selfObj$$2$$, arguments)
103 }
104}
105function $goog$bind$$($fn$$2$$, $selfObj$$3$$, $var_args$$26$$) {
106 $goog$bind$$ = Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf("native code") ? $goog$bindNative_$$ : $goog$bindJs_$$;
107 return $goog$bind$$.apply($JSCompiler_alias_NULL$$, arguments)
108}
109function $goog$partial$$($fn$$3$$, $var_args$$27$$) {
110 var $args$$ = Array.prototype.slice.call(arguments, 1);
111 return function() {
112 var $newArgs$$1$$ = Array.prototype.slice.call(arguments);
113 $newArgs$$1$$.unshift.apply($newArgs$$1$$, $args$$);
114 return $fn$$3$$.apply(this, $newArgs$$1$$)
115 }
116}
117var $goog$now$$ = Date.now || function() {
118 return+new Date
119};
120function $goog$inherits$$($childCtor$$, $parentCtor$$) {
121 function $tempCtor$$() {
122 }
123 $tempCtor$$.prototype = $parentCtor$$.prototype;
124 $childCtor$$.$superClass_$ = $parentCtor$$.prototype;
125 $childCtor$$.prototype = new $tempCtor$$;
126 $childCtor$$.prototype.constructor = $childCtor$$
127}
128;function $goog$string$trim$$($str$$25$$) {
129 return $str$$25$$.replace(/^[\s\xa0]+|[\s\xa0]+$/g, "")
130}
131function $goog$string$htmlEscape$$($str$$31$$) {
132 if(!$goog$string$allRe_$$.test($str$$31$$)) {
133 return $str$$31$$
134 }
135 -1 != $str$$31$$.indexOf("&") && ($str$$31$$ = $str$$31$$.replace($goog$string$amperRe_$$, "&amp;"));
136 -1 != $str$$31$$.indexOf("<") && ($str$$31$$ = $str$$31$$.replace($goog$string$ltRe_$$, "&lt;"));
137 -1 != $str$$31$$.indexOf(">") && ($str$$31$$ = $str$$31$$.replace($goog$string$gtRe_$$, "&gt;"));
138 -1 != $str$$31$$.indexOf('"') && ($str$$31$$ = $str$$31$$.replace($goog$string$quotRe_$$, "&quot;"));
139 return $str$$31$$
140}
141var $goog$string$amperRe_$$ = /&/g, $goog$string$ltRe_$$ = /</g, $goog$string$gtRe_$$ = />/g, $goog$string$quotRe_$$ = /\"/g, $goog$string$allRe_$$ = /[&<>\"]/;
142function $goog$string$toCamelCase$$($str$$42$$) {
143 return String($str$$42$$).replace(/\-([a-z])/g, function($all$$, $match$$) {
144 return $match$$.toUpperCase()
145 })
146}
147;var $goog$array$ARRAY_PROTOTYPE_$$ = Array.prototype, $goog$array$indexOf$$ = $goog$array$ARRAY_PROTOTYPE_$$.indexOf ? function($arr$$10$$, $obj$$21$$, $opt_fromIndex$$6$$) {
148 return $goog$array$ARRAY_PROTOTYPE_$$.indexOf.call($arr$$10$$, $obj$$21$$, $opt_fromIndex$$6$$)
149} : function($arr$$11$$, $obj$$22$$, $fromIndex_i$$12_opt_fromIndex$$7$$) {
150 $fromIndex_i$$12_opt_fromIndex$$7$$ = $fromIndex_i$$12_opt_fromIndex$$7$$ == $JSCompiler_alias_NULL$$ ? 0 : 0 > $fromIndex_i$$12_opt_fromIndex$$7$$ ? Math.max(0, $arr$$11$$.length + $fromIndex_i$$12_opt_fromIndex$$7$$) : $fromIndex_i$$12_opt_fromIndex$$7$$;
151 if($goog$isString$$($arr$$11$$)) {
152 return!$goog$isString$$($obj$$22$$) || 1 != $obj$$22$$.length ? -1 : $arr$$11$$.indexOf($obj$$22$$, $fromIndex_i$$12_opt_fromIndex$$7$$)
153 }
154 for(;$fromIndex_i$$12_opt_fromIndex$$7$$ < $arr$$11$$.length;$fromIndex_i$$12_opt_fromIndex$$7$$++) {
155 if($fromIndex_i$$12_opt_fromIndex$$7$$ in $arr$$11$$ && $arr$$11$$[$fromIndex_i$$12_opt_fromIndex$$7$$] === $obj$$22$$) {
156 return $fromIndex_i$$12_opt_fromIndex$$7$$
157 }
158 }
159 return-1
160}, $goog$array$forEach$$ = $goog$array$ARRAY_PROTOTYPE_$$.forEach ? function($arr$$14$$, $f$$, $opt_obj$$1$$) {
161 $goog$array$ARRAY_PROTOTYPE_$$.forEach.call($arr$$14$$, $f$$, $opt_obj$$1$$)
162} : function($arr$$15$$, $f$$1$$, $opt_obj$$2$$) {
163 for(var $l$$2$$ = $arr$$15$$.length, $arr2$$ = $goog$isString$$($arr$$15$$) ? $arr$$15$$.split("") : $arr$$15$$, $i$$14$$ = 0;$i$$14$$ < $l$$2$$;$i$$14$$++) {
164 $i$$14$$ in $arr2$$ && $f$$1$$.call($opt_obj$$2$$, $arr2$$[$i$$14$$], $i$$14$$, $arr$$15$$)
165 }
166}, $goog$array$filter$$ = $goog$array$ARRAY_PROTOTYPE_$$.filter ? function($arr$$17$$, $f$$3$$, $opt_obj$$4$$) {
167 return $goog$array$ARRAY_PROTOTYPE_$$.filter.call($arr$$17$$, $f$$3$$, $opt_obj$$4$$)
168} : function($arr$$18$$, $f$$4$$, $opt_obj$$5$$) {
169 for(var $l$$4$$ = $arr$$18$$.length, $res$$ = [], $resLength$$ = 0, $arr2$$2$$ = $goog$isString$$($arr$$18$$) ? $arr$$18$$.split("") : $arr$$18$$, $i$$16$$ = 0;$i$$16$$ < $l$$4$$;$i$$16$$++) {
170 if($i$$16$$ in $arr2$$2$$) {
171 var $val$$11$$ = $arr2$$2$$[$i$$16$$];
172 $f$$4$$.call($opt_obj$$5$$, $val$$11$$, $i$$16$$, $arr$$18$$) && ($res$$[$resLength$$++] = $val$$11$$)
173 }
174 }
175 return $res$$
176}, $goog$array$map$$ = $goog$array$ARRAY_PROTOTYPE_$$.map ? function($arr$$19$$, $f$$5$$, $opt_obj$$6$$) {
177 return $goog$array$ARRAY_PROTOTYPE_$$.map.call($arr$$19$$, $f$$5$$, $opt_obj$$6$$)
178} : function($arr$$20$$, $f$$6$$, $opt_obj$$7$$) {
179 for(var $l$$5$$ = $arr$$20$$.length, $res$$1$$ = Array($l$$5$$), $arr2$$3$$ = $goog$isString$$($arr$$20$$) ? $arr$$20$$.split("") : $arr$$20$$, $i$$17$$ = 0;$i$$17$$ < $l$$5$$;$i$$17$$++) {
180 $i$$17$$ in $arr2$$3$$ && ($res$$1$$[$i$$17$$] = $f$$6$$.call($opt_obj$$7$$, $arr2$$3$$[$i$$17$$], $i$$17$$, $arr$$20$$))
181 }
182 return $res$$1$$
183}, $goog$array$every$$ = $goog$array$ARRAY_PROTOTYPE_$$.every ? function($arr$$25$$, $f$$11$$, $opt_obj$$12$$) {
184 return $goog$array$ARRAY_PROTOTYPE_$$.every.call($arr$$25$$, $f$$11$$, $opt_obj$$12$$)
185} : function($arr$$26$$, $f$$12$$, $opt_obj$$13$$) {
186 for(var $l$$7$$ = $arr$$26$$.length, $arr2$$5$$ = $goog$isString$$($arr$$26$$) ? $arr$$26$$.split("") : $arr$$26$$, $i$$19$$ = 0;$i$$19$$ < $l$$7$$;$i$$19$$++) {
187 if($i$$19$$ in $arr2$$5$$ && !$f$$12$$.call($opt_obj$$13$$, $arr2$$5$$[$i$$19$$], $i$$19$$, $arr$$26$$)) {
188 return $JSCompiler_alias_FALSE$$
189 }
190 }
191 return $JSCompiler_alias_TRUE$$
192};
193function $goog$array$find$$($arr$$27$$, $f$$13$$) {
194 var $i$$20_l$$inline_64$$;
195 a: {
196 $i$$20_l$$inline_64$$ = $arr$$27$$.length;
197 for(var $arr2$$inline_65$$ = $goog$isString$$($arr$$27$$) ? $arr$$27$$.split("") : $arr$$27$$, $i$$inline_66$$ = 0;$i$$inline_66$$ < $i$$20_l$$inline_64$$;$i$$inline_66$$++) {
198 if($i$$inline_66$$ in $arr2$$inline_65$$ && $f$$13$$.call($JSCompiler_alias_VOID$$, $arr2$$inline_65$$[$i$$inline_66$$], $i$$inline_66$$, $arr$$27$$)) {
199 $i$$20_l$$inline_64$$ = $i$$inline_66$$;
200 break a
201 }
202 }
203 $i$$20_l$$inline_64$$ = -1
204 }
205 return 0 > $i$$20_l$$inline_64$$ ? $JSCompiler_alias_NULL$$ : $goog$isString$$($arr$$27$$) ? $arr$$27$$.charAt($i$$20_l$$inline_64$$) : $arr$$27$$[$i$$20_l$$inline_64$$]
206}
207function $goog$array$contains$$($arr$$31$$, $obj$$25$$) {
208 return 0 <= $goog$array$indexOf$$($arr$$31$$, $obj$$25$$)
209}
210function $goog$array$remove$$($arr$$38$$, $obj$$29$$) {
211 var $i$$26$$ = $goog$array$indexOf$$($arr$$38$$, $obj$$29$$);
212 0 <= $i$$26$$ && $goog$array$ARRAY_PROTOTYPE_$$.splice.call($arr$$38$$, $i$$26$$, 1)
213}
214function $goog$array$toArray$$($object$$2$$) {
215 var $length$$15$$ = $object$$2$$.length;
216 if(0 < $length$$15$$) {
217 for(var $rv$$3$$ = Array($length$$15$$), $i$$29$$ = 0;$i$$29$$ < $length$$15$$;$i$$29$$++) {
218 $rv$$3$$[$i$$29$$] = $object$$2$$[$i$$29$$]
219 }
220 return $rv$$3$$
221 }
222 return[]
223}
224function $goog$array$extend$$($arr1$$, $var_args$$41$$) {
225 for(var $i$$30$$ = 1;$i$$30$$ < arguments.length;$i$$30$$++) {
226 var $arr2$$8$$ = arguments[$i$$30$$], $isArrayLike$$;
227 if($goog$isArray$$($arr2$$8$$) || ($isArrayLike$$ = $goog$isArrayLike$$($arr2$$8$$)) && $arr2$$8$$.hasOwnProperty("callee")) {
228 $arr1$$.push.apply($arr1$$, $arr2$$8$$)
229 }else {
230 if($isArrayLike$$) {
231 for(var $len1$$ = $arr1$$.length, $len2$$ = $arr2$$8$$.length, $j$$1$$ = 0;$j$$1$$ < $len2$$;$j$$1$$++) {
232 $arr1$$[$len1$$ + $j$$1$$] = $arr2$$8$$[$j$$1$$]
233 }
234 }else {
235 $arr1$$.push($arr2$$8$$)
236 }
237 }
238 }
239}
240function $goog$array$slice$$($arr$$42$$, $start$$5$$, $opt_end$$13$$) {
241 return 2 >= arguments.length ? $goog$array$ARRAY_PROTOTYPE_$$.slice.call($arr$$42$$, $start$$5$$) : $goog$array$ARRAY_PROTOTYPE_$$.slice.call($arr$$42$$, $start$$5$$, $opt_end$$13$$)
242}
243function $goog$array$defaultCompare$$($a$$3$$, $b$$2$$) {
244 return $a$$3$$ > $b$$2$$ ? 1 : $a$$3$$ < $b$$2$$ ? -1 : 0
245}
246;var $goog$userAgent$detectedOpera_$$, $goog$userAgent$detectedIe_$$, $goog$userAgent$detectedWebkit_$$, $goog$userAgent$detectedGecko_$$, $goog$userAgent$detectedMac_$$;
247function $goog$userAgent$getUserAgentString$$() {
248 return $goog$global$$.navigator ? $goog$global$$.navigator.userAgent : $JSCompiler_alias_NULL$$
249}
250function $goog$userAgent$getNavigator$$() {
251 return $goog$global$$.navigator
252}
253$goog$userAgent$detectedGecko_$$ = $goog$userAgent$detectedWebkit_$$ = $goog$userAgent$detectedIe_$$ = $goog$userAgent$detectedOpera_$$ = $JSCompiler_alias_FALSE$$;
254var $ua$$inline_71$$;
255if($ua$$inline_71$$ = $goog$userAgent$getUserAgentString$$()) {
256 var $navigator$$inline_72$$ = $goog$userAgent$getNavigator$$();
257 $goog$userAgent$detectedOpera_$$ = 0 == $ua$$inline_71$$.indexOf("Opera");
258 $goog$userAgent$detectedIe_$$ = !$goog$userAgent$detectedOpera_$$ && -1 != $ua$$inline_71$$.indexOf("MSIE");
259 $goog$userAgent$detectedWebkit_$$ = !$goog$userAgent$detectedOpera_$$ && -1 != $ua$$inline_71$$.indexOf("WebKit");
260 $goog$userAgent$detectedGecko_$$ = !$goog$userAgent$detectedOpera_$$ && !$goog$userAgent$detectedWebkit_$$ && "Gecko" == $navigator$$inline_72$$.product
261}
262var $goog$userAgent$OPERA$$ = $goog$userAgent$detectedOpera_$$, $goog$userAgent$IE$$ = $goog$userAgent$detectedIe_$$, $goog$userAgent$GECKO$$ = $goog$userAgent$detectedGecko_$$, $goog$userAgent$WEBKIT$$ = $goog$userAgent$detectedWebkit_$$, $navigator$$inline_74$$ = $goog$userAgent$getNavigator$$();
263$goog$userAgent$detectedMac_$$ = -1 != ($navigator$$inline_74$$ && $navigator$$inline_74$$.platform || "").indexOf("Mac");
264var $goog$userAgent$X11$$ = !!$goog$userAgent$getNavigator$$() && -1 != ($goog$userAgent$getNavigator$$().appVersion || "").indexOf("X11"), $goog$userAgent$VERSION$$;
265a: {
266 var $version$$inline_77$$ = "", $re$$inline_78$$;
267 if($goog$userAgent$OPERA$$ && $goog$global$$.opera) {
268 var $operaVersion$$inline_79$$ = $goog$global$$.opera.version, $version$$inline_77$$ = "function" == typeof $operaVersion$$inline_79$$ ? $operaVersion$$inline_79$$() : $operaVersion$$inline_79$$
269 }else {
270 if($goog$userAgent$GECKO$$ ? $re$$inline_78$$ = /rv\:([^\);]+)(\)|;)/ : $goog$userAgent$IE$$ ? $re$$inline_78$$ = /MSIE\s+([^\);]+)(\)|;)/ : $goog$userAgent$WEBKIT$$ && ($re$$inline_78$$ = /WebKit\/(\S+)/), $re$$inline_78$$) {
271 var $arr$$inline_80$$ = $re$$inline_78$$.exec($goog$userAgent$getUserAgentString$$()), $version$$inline_77$$ = $arr$$inline_80$$ ? $arr$$inline_80$$[1] : ""
272 }
273 }
274 if($goog$userAgent$IE$$) {
275 var $docMode$$inline_81$$, $doc$$inline_802$$ = $goog$global$$.document;
276 $docMode$$inline_81$$ = $doc$$inline_802$$ ? $doc$$inline_802$$.documentMode : $JSCompiler_alias_VOID$$;
277 if($docMode$$inline_81$$ > parseFloat($version$$inline_77$$)) {
278 $goog$userAgent$VERSION$$ = String($docMode$$inline_81$$);
279 break a
280 }
281 }
282 $goog$userAgent$VERSION$$ = $version$$inline_77$$
283}
284var $goog$userAgent$isVersionCache_$$ = {};
285function $goog$userAgent$isVersion$$($version$$8$$) {
286 var $JSCompiler_temp$$55_order$$inline_85$$;
287 if(!($JSCompiler_temp$$55_order$$inline_85$$ = $goog$userAgent$isVersionCache_$$[$version$$8$$])) {
288 $JSCompiler_temp$$55_order$$inline_85$$ = 0;
289 for(var $v1Subs$$inline_86$$ = $goog$string$trim$$(String($goog$userAgent$VERSION$$)).split("."), $v2Subs$$inline_87$$ = $goog$string$trim$$(String($version$$8$$)).split("."), $subCount$$inline_88$$ = Math.max($v1Subs$$inline_86$$.length, $v2Subs$$inline_87$$.length), $subIdx$$inline_89$$ = 0;0 == $JSCompiler_temp$$55_order$$inline_85$$ && $subIdx$$inline_89$$ < $subCount$$inline_88$$;$subIdx$$inline_89$$++) {
290 var $v1Sub$$inline_90$$ = $v1Subs$$inline_86$$[$subIdx$$inline_89$$] || "", $v2Sub$$inline_91$$ = $v2Subs$$inline_87$$[$subIdx$$inline_89$$] || "", $v1CompParser$$inline_92$$ = RegExp("(\\d*)(\\D*)", "g"), $v2CompParser$$inline_93$$ = RegExp("(\\d*)(\\D*)", "g");
291 do {
292 var $v1Comp$$inline_94$$ = $v1CompParser$$inline_92$$.exec($v1Sub$$inline_90$$) || ["", "", ""], $v2Comp$$inline_95$$ = $v2CompParser$$inline_93$$.exec($v2Sub$$inline_91$$) || ["", "", ""];
293 if(0 == $v1Comp$$inline_94$$[0].length && 0 == $v2Comp$$inline_95$$[0].length) {
294 break
295 }
296 $JSCompiler_temp$$55_order$$inline_85$$ = ((0 == $v1Comp$$inline_94$$[1].length ? 0 : parseInt($v1Comp$$inline_94$$[1], 10)) < (0 == $v2Comp$$inline_95$$[1].length ? 0 : parseInt($v2Comp$$inline_95$$[1], 10)) ? -1 : (0 == $v1Comp$$inline_94$$[1].length ? 0 : parseInt($v1Comp$$inline_94$$[1], 10)) > (0 == $v2Comp$$inline_95$$[1].length ? 0 : parseInt($v2Comp$$inline_95$$[1], 10)) ? 1 : 0) || ((0 == $v1Comp$$inline_94$$[2].length) < (0 == $v2Comp$$inline_95$$[2].length) ? -1 : (0 == $v1Comp$$inline_94$$[2].length) >
297 (0 == $v2Comp$$inline_95$$[2].length) ? 1 : 0) || ($v1Comp$$inline_94$$[2] < $v2Comp$$inline_95$$[2] ? -1 : $v1Comp$$inline_94$$[2] > $v2Comp$$inline_95$$[2] ? 1 : 0)
298 }while(0 == $JSCompiler_temp$$55_order$$inline_85$$)
299 }
300 $JSCompiler_temp$$55_order$$inline_85$$ = $goog$userAgent$isVersionCache_$$[$version$$8$$] = 0 <= $JSCompiler_temp$$55_order$$inline_85$$
301 }
302 return $JSCompiler_temp$$55_order$$inline_85$$
303}
304var $goog$userAgent$isDocumentModeCache_$$ = {};
305function $goog$userAgent$isDocumentMode$$($documentMode$$) {
306 return $goog$userAgent$isDocumentModeCache_$$[$documentMode$$] || ($goog$userAgent$isDocumentModeCache_$$[$documentMode$$] = $goog$userAgent$IE$$ && !!document.documentMode && document.documentMode >= $documentMode$$)
307}
308;var $goog$dom$defaultDomHelper_$$, $goog$dom$BrowserFeature$CAN_ADD_NAME_OR_TYPE_ATTRIBUTES$$ = !$goog$userAgent$IE$$ || $goog$userAgent$isDocumentMode$$(9);
309!$goog$userAgent$GECKO$$ && !$goog$userAgent$IE$$ || $goog$userAgent$IE$$ && $goog$userAgent$isDocumentMode$$(9) || $goog$userAgent$GECKO$$ && $goog$userAgent$isVersion$$("1.9.1");
310$goog$userAgent$IE$$ && $goog$userAgent$isVersion$$("9");
311var $goog$dom$BrowserFeature$CAN_USE_PARENT_ELEMENT_PROPERTY$$ = $goog$userAgent$IE$$ || $goog$userAgent$OPERA$$ || $goog$userAgent$WEBKIT$$;
312function $goog$dom$classes$get$$($className$$4_element$$7$$) {
313 $className$$4_element$$7$$ = $className$$4_element$$7$$.className;
314 return $goog$isString$$($className$$4_element$$7$$) && $className$$4_element$$7$$.match(/\S+/g) || []
315}
316function $goog$dom$classes$add$$($element$$8$$, $var_args$$45$$) {
317 var $classes$$ = $goog$dom$classes$get$$($element$$8$$), $args$$3$$ = $goog$array$slice$$(arguments, 1), $expectedCount$$ = $classes$$.length + $args$$3$$.length;
318 $goog$dom$classes$add_$$($classes$$, $args$$3$$);
319 $element$$8$$.className = $classes$$.join(" ");
320 return $classes$$.length == $expectedCount$$
321}
322function $goog$dom$classes$remove$$($element$$9$$, $var_args$$46$$) {
323 var $classes$$1$$ = $goog$dom$classes$get$$($element$$9$$), $args$$4$$ = $goog$array$slice$$(arguments, 1), $newClasses$$ = $goog$dom$classes$getDifference_$$($classes$$1$$, $args$$4$$);
324 $element$$9$$.className = $newClasses$$.join(" ");
325 return $newClasses$$.length == $classes$$1$$.length - $args$$4$$.length
326}
327function $goog$dom$classes$add_$$($classes$$2$$, $args$$5$$) {
328 for(var $i$$40$$ = 0;$i$$40$$ < $args$$5$$.length;$i$$40$$++) {
329 $goog$array$contains$$($classes$$2$$, $args$$5$$[$i$$40$$]) || $classes$$2$$.push($args$$5$$[$i$$40$$])
330 }
331}
332function $goog$dom$classes$getDifference_$$($arr1$$4$$, $arr2$$12$$) {
333 return $goog$array$filter$$($arr1$$4$$, function($item$$) {
334 return!$goog$array$contains$$($arr2$$12$$, $item$$)
335 })
336}
337function $goog$dom$classes$addRemove$$($element$$11$$, $classesToRemove$$, $classesToAdd$$) {
338 var $classes$$4$$ = $goog$dom$classes$get$$($element$$11$$);
339 $goog$isString$$($classesToRemove$$) ? $goog$array$remove$$($classes$$4$$, $classesToRemove$$) : $goog$isArray$$($classesToRemove$$) && ($classes$$4$$ = $goog$dom$classes$getDifference_$$($classes$$4$$, $classesToRemove$$));
340 $goog$isString$$($classesToAdd$$) && !$goog$array$contains$$($classes$$4$$, $classesToAdd$$) ? $classes$$4$$.push($classesToAdd$$) : $goog$isArray$$($classesToAdd$$) && $goog$dom$classes$add_$$($classes$$4$$, $classesToAdd$$);
341 $element$$11$$.className = $classes$$4$$.join(" ")
342}
343;function $goog$math$Coordinate$$($opt_x$$, $opt_y$$) {
344 this.x = $goog$isDef$$($opt_x$$) ? $opt_x$$ : 0;
345 this.y = $goog$isDef$$($opt_y$$) ? $opt_y$$ : 0
346}
347;function $goog$math$Size$$($width$$12$$, $height$$11$$) {
348 this.width = $width$$12$$;
349 this.height = $height$$11$$
350}
351$goog$math$Size$$.prototype.floor = function $$goog$math$Size$$$$floor$() {
352 this.width = Math.floor(this.width);
353 this.height = Math.floor(this.height);
354 return this
355};
356$goog$math$Size$$.prototype.round = function $$goog$math$Size$$$$round$() {
357 this.width = Math.round(this.width);
358 this.height = Math.round(this.height);
359 return this
360};
361function $goog$object$forEach$$($obj$$30$$, $f$$18$$) {
362 for(var $key$$18$$ in $obj$$30$$) {
363 $f$$18$$.call($JSCompiler_alias_VOID$$, $obj$$30$$[$key$$18$$], $key$$18$$, $obj$$30$$)
364 }
365}
366var $goog$object$PROTOTYPE_FIELDS_$$ = "constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");
367function $goog$object$extend$$($target$$42$$, $var_args$$51$$) {
368 for(var $key$$41$$, $source$$2$$, $i$$47$$ = 1;$i$$47$$ < arguments.length;$i$$47$$++) {
369 $source$$2$$ = arguments[$i$$47$$];
370 for($key$$41$$ in $source$$2$$) {
371 $target$$42$$[$key$$41$$] = $source$$2$$[$key$$41$$]
372 }
373 for(var $j$$5$$ = 0;$j$$5$$ < $goog$object$PROTOTYPE_FIELDS_$$.length;$j$$5$$++) {
374 $key$$41$$ = $goog$object$PROTOTYPE_FIELDS_$$[$j$$5$$], Object.prototype.hasOwnProperty.call($source$$2$$, $key$$41$$) && ($target$$42$$[$key$$41$$] = $source$$2$$[$key$$41$$])
375 }
376 }
377}
378;function $goog$dom$getDomHelper$$($opt_element$$10$$) {
379 return $opt_element$$10$$ ? new $goog$dom$DomHelper$$($goog$dom$getOwnerDocument$$($opt_element$$10$$)) : $goog$dom$defaultDomHelper_$$ || ($goog$dom$defaultDomHelper_$$ = new $goog$dom$DomHelper$$)
380}
381function $goog$dom$setProperties$$($element$$16$$, $properties$$) {
382 $goog$object$forEach$$($properties$$, function($val$$20$$, $key$$42$$) {
383 "style" == $key$$42$$ ? $element$$16$$.style.cssText = $val$$20$$ : "class" == $key$$42$$ ? $element$$16$$.className = $val$$20$$ : "for" == $key$$42$$ ? $element$$16$$.htmlFor = $val$$20$$ : $key$$42$$ in $goog$dom$DIRECT_ATTRIBUTE_MAP_$$ ? $element$$16$$.setAttribute($goog$dom$DIRECT_ATTRIBUTE_MAP_$$[$key$$42$$], $val$$20$$) : 0 == $key$$42$$.lastIndexOf("aria-", 0) || 0 == $key$$42$$.lastIndexOf("data-", 0) ? $element$$16$$.setAttribute($key$$42$$, $val$$20$$) : $element$$16$$[$key$$42$$] =
384 $val$$20$$
385 })
386}
387var $goog$dom$DIRECT_ATTRIBUTE_MAP_$$ = {cellpadding:"cellPadding", cellspacing:"cellSpacing", colspan:"colSpan", frameborder:"frameBorder", height:"height", maxlength:"maxLength", role:"role", rowspan:"rowSpan", type:"type", usemap:"useMap", valign:"vAlign", width:"width"};
388function $goog$dom$createDom$$($tagName$$2$$, $opt_attributes$$, $var_args$$54$$) {
389 var $args$$inline_101$$ = arguments, $doc$$inline_102$$ = document, $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$ = $args$$inline_101$$[0], $attributes$$inline_104$$ = $args$$inline_101$$[1];
390 if(!$goog$dom$BrowserFeature$CAN_ADD_NAME_OR_TYPE_ATTRIBUTES$$ && $attributes$$inline_104$$ && ($attributes$$inline_104$$.name || $attributes$$inline_104$$.type)) {
391 $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$ = ["<", $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$];
392 $attributes$$inline_104$$.name && $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$.push(' name="', $goog$string$htmlEscape$$($attributes$$inline_104$$.name), '"');
393 if($attributes$$inline_104$$.type) {
394 $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$.push(' type="', $goog$string$htmlEscape$$($attributes$$inline_104$$.type), '"');
395 var $clone$$inline_106$$ = {};
396 $goog$object$extend$$($clone$$inline_106$$, $attributes$$inline_104$$);
397 delete $clone$$inline_106$$.type;
398 $attributes$$inline_104$$ = $clone$$inline_106$$
399 }
400 $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$.push(">");
401 $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$ = $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$.join("")
402 }
403 $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$ = $doc$$inline_102$$.createElement($element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$);
404 $attributes$$inline_104$$ && ($goog$isString$$($attributes$$inline_104$$) ? $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$.className = $attributes$$inline_104$$ : $goog$isArray$$($attributes$$inline_104$$) ? $goog$dom$classes$add$$.apply($JSCompiler_alias_NULL$$, [$element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$].concat($attributes$$inline_104$$)) : $goog$dom$setProperties$$($element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$, $attributes$$inline_104$$));
405 2 < $args$$inline_101$$.length && $goog$dom$append_$$($doc$$inline_102$$, $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$, $args$$inline_101$$, 2);
406 return $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$
407}
408function $goog$dom$append_$$($doc$$12$$, $parent$$6$$, $args$$7$$, $i$$51_startIndex$$) {
409 function $childHandler$$($child$$1$$) {
410 $child$$1$$ && $parent$$6$$.appendChild($goog$isString$$($child$$1$$) ? $doc$$12$$.createTextNode($child$$1$$) : $child$$1$$)
411 }
412 for(;$i$$51_startIndex$$ < $args$$7$$.length;$i$$51_startIndex$$++) {
413 var $arg$$5$$ = $args$$7$$[$i$$51_startIndex$$];
414 if($goog$isArrayLike$$($arg$$5$$) && !($goog$isObject$$($arg$$5$$) && 0 < $arg$$5$$.nodeType)) {
415 var $JSCompiler_inline_result$$7$$;
416 a: {
417 if($arg$$5$$ && "number" == typeof $arg$$5$$.length) {
418 if($goog$isObject$$($arg$$5$$)) {
419 $JSCompiler_inline_result$$7$$ = "function" == typeof $arg$$5$$.item || "string" == typeof $arg$$5$$.item;
420 break a
421 }
422 if($goog$isFunction$$($arg$$5$$)) {
423 $JSCompiler_inline_result$$7$$ = "function" == typeof $arg$$5$$.item;
424 break a
425 }
426 }
427 $JSCompiler_inline_result$$7$$ = $JSCompiler_alias_FALSE$$
428 }
429 $goog$array$forEach$$($JSCompiler_inline_result$$7$$ ? $goog$array$toArray$$($arg$$5$$) : $arg$$5$$, $childHandler$$)
430 }else {
431 $childHandler$$($arg$$5$$)
432 }
433 }
434}
435function $goog$dom$removeChildren$$($node$$3$$) {
436 for(var $child$$3$$;$child$$3$$ = $node$$3$$.firstChild;) {
437 $node$$3$$.removeChild($child$$3$$)
438 }
439}
440function $goog$dom$removeNode$$($node$$4$$) {
441 $node$$4$$ && $node$$4$$.parentNode && $node$$4$$.parentNode.removeChild($node$$4$$)
442}
443function $goog$dom$isElement$$($obj$$59$$) {
444 return $goog$isObject$$($obj$$59$$) && 1 == $obj$$59$$.nodeType
445}
446function $goog$dom$contains$$($parent$$13$$, $descendant$$) {
447 if($parent$$13$$.contains && 1 == $descendant$$.nodeType) {
448 return $parent$$13$$ == $descendant$$ || $parent$$13$$.contains($descendant$$)
449 }
450 if("undefined" != typeof $parent$$13$$.compareDocumentPosition) {
451 return $parent$$13$$ == $descendant$$ || Boolean($parent$$13$$.compareDocumentPosition($descendant$$) & 16)
452 }
453 for(;$descendant$$ && $parent$$13$$ != $descendant$$;) {
454 $descendant$$ = $descendant$$.parentNode
455 }
456 return $descendant$$ == $parent$$13$$
457}
458function $goog$dom$getOwnerDocument$$($node$$15$$) {
459 return 9 == $node$$15$$.nodeType ? $node$$15$$ : $node$$15$$.ownerDocument || $node$$15$$.document
460}
461function $goog$dom$isFocusableTabIndex$$($element$$23_index$$53$$) {
462 var $attrNode$$ = $element$$23_index$$53$$.getAttributeNode("tabindex");
463 return $attrNode$$ && $attrNode$$.specified ? ($element$$23_index$$53$$ = $element$$23_index$$53$$.tabIndex, "number" == typeof $element$$23_index$$53$$ && 0 <= $element$$23_index$$53$$ && 32768 > $element$$23_index$$53$$) : $JSCompiler_alias_FALSE$$
464}
465function $goog$dom$DomHelper$$($opt_document$$) {
466 this.$document_$ = $opt_document$$ || $goog$global$$.document || document
467}
468$JSCompiler_prototypeAlias$$ = $goog$dom$DomHelper$$.prototype;
469$JSCompiler_prototypeAlias$$.$getDomHelper$ = $goog$dom$getDomHelper$$;
470$JSCompiler_prototypeAlias$$.$getElement$ = function $$JSCompiler_prototypeAlias$$$$getElement$$($element$$28$$) {
471 return $goog$isString$$($element$$28$$) ? this.$document_$.getElementById($element$$28$$) : $element$$28$$
472};
473$JSCompiler_prototypeAlias$$.$setProperties$ = $goog$dom$setProperties$$;
474$JSCompiler_prototypeAlias$$.createElement = function $$JSCompiler_prototypeAlias$$$createElement$($name$$61$$) {
475 return this.$document_$.createElement($name$$61$$)
476};
477$JSCompiler_prototypeAlias$$.createTextNode = function $$JSCompiler_prototypeAlias$$$createTextNode$($content$$1$$) {
478 return this.$document_$.createTextNode($content$$1$$)
479};
480function $JSCompiler_StaticMethods_getDocumentScroll$$($JSCompiler_StaticMethods_getDocumentScroll$self_el$$inline_112$$) {
481 var $doc$$inline_111_win$$inline_113$$ = $JSCompiler_StaticMethods_getDocumentScroll$self_el$$inline_112$$.$document_$, $JSCompiler_StaticMethods_getDocumentScroll$self_el$$inline_112$$ = !$goog$userAgent$WEBKIT$$ ? $doc$$inline_111_win$$inline_113$$.documentElement : $doc$$inline_111_win$$inline_113$$.body, $doc$$inline_111_win$$inline_113$$ = $doc$$inline_111_win$$inline_113$$.parentWindow || $doc$$inline_111_win$$inline_113$$.defaultView;
482 return new $goog$math$Coordinate$$($doc$$inline_111_win$$inline_113$$.pageXOffset || $JSCompiler_StaticMethods_getDocumentScroll$self_el$$inline_112$$.scrollLeft, $doc$$inline_111_win$$inline_113$$.pageYOffset || $JSCompiler_StaticMethods_getDocumentScroll$self_el$$inline_112$$.scrollTop)
483}
484$JSCompiler_prototypeAlias$$.appendChild = function $$JSCompiler_prototypeAlias$$$appendChild$($parent$$7$$, $child$$2$$) {
485 $parent$$7$$.appendChild($child$$2$$)
486};
487$JSCompiler_prototypeAlias$$.append = function $$JSCompiler_prototypeAlias$$$append$($parent$$8$$, $var_args$$55$$) {
488 $goog$dom$append_$$($goog$dom$getOwnerDocument$$($parent$$8$$), $parent$$8$$, arguments, 1)
489};
490$JSCompiler_prototypeAlias$$.contains = $goog$dom$contains$$;
491var $goog$functions$TRUE$$;
492$goog$functions$TRUE$$ = $JSCompiler_returnArg$$($JSCompiler_alias_TRUE$$);
493/*
494 Portions of this code are from the Dojo Toolkit, received by
495 The Closure Library Authors under the BSD license. All other code is
496 Copyright 2005-2009 The Closure Library Authors. All Rights Reserved.
497
498The "New" BSD License:
499
500Copyright (c) 2005-2009, The Dojo Foundation
501All rights reserved.
502
503Redistribution and use in source and binary forms, with or without
504modification, are permitted provided that the following conditions are met:
505
506 Redistributions of source code must retain the above copyright notice, this
507 list of conditions and the following disclaimer.
508 Redistributions in binary form must reproduce the above copyright notice,
509 this list of conditions and the following disclaimer in the documentation
510 and/or other materials provided with the distribution.
511 Neither the name of the Dojo Foundation nor the names of its contributors
512 may be used to endorse or promote products derived from this software
513 without specific prior written permission.
514
515THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
516ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
517WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
518DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
519FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
520DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
521SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
522CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
523OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
524OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
525*/
526function $getArr$$inline_117$$($i$$inline_155$$, $opt_arr$$inline_156$$) {
527 var $r$$inline_157$$ = $opt_arr$$inline_156$$ || [];
528 $i$$inline_155$$ && $r$$inline_157$$.push($i$$inline_155$$);
529 return $r$$inline_157$$
530}
531var $cssCaseBug$$inline_118$$ = $goog$userAgent$WEBKIT$$ && "BackCompat" == document.compatMode, $childNodesName$$inline_119$$ = document.firstChild.children ? "children" : "childNodes", $caseSensitive$$inline_120$$ = $JSCompiler_alias_FALSE$$;
532function $getQueryParts$$inline_121$$($query$$inline_158$$) {
533 function $endAll$$inline_178$$() {
534 0 <= $inId$$inline_166$$ && ($currentPart$$inline_173$$.id = $ts$$inline_159$$($inId$$inline_166$$, $x$$inline_171$$).replace(/\\/g, ""), $inId$$inline_166$$ = -1);
535 if(0 <= $inTag$$inline_167$$) {
536 var $tv$$inline_805$$ = $inTag$$inline_167$$ == $x$$inline_171$$ ? $JSCompiler_alias_NULL$$ : $ts$$inline_159$$($inTag$$inline_167$$, $x$$inline_171$$);
537 0 > ">~+".indexOf($tv$$inline_805$$) ? $currentPart$$inline_173$$.$tag$ = $tv$$inline_805$$ : $currentPart$$inline_173$$.$oper$ = $tv$$inline_805$$;
538 $inTag$$inline_167$$ = -1
539 }
540 0 <= $inClass$$inline_165$$ && ($currentPart$$inline_173$$.$classes$.push($ts$$inline_159$$($inClass$$inline_165$$ + 1, $x$$inline_171$$).replace(/\\/g, "")), $inClass$$inline_165$$ = -1)
541 }
542 function $ts$$inline_159$$($s$$inline_182$$, $e$$inline_183$$) {
543 return $goog$string$trim$$($query$$inline_158$$.slice($s$$inline_182$$, $e$$inline_183$$))
544 }
545 for(var $query$$inline_158$$ = 0 <= ">~+".indexOf($query$$inline_158$$.slice(-1)) ? $query$$inline_158$$ + " * " : $query$$inline_158$$ + " ", $queryParts$$inline_160$$ = [], $cmf$$inline_180_inBrackets$$inline_161$$ = -1, $inParens$$inline_162$$ = -1, $addToCc$$inline_181_inMatchFor$$inline_163$$ = -1, $inPseudo$$inline_164$$ = -1, $inClass$$inline_165$$ = -1, $inId$$inline_166$$ = -1, $inTag$$inline_167$$ = -1, $lc$$inline_168$$ = "", $cc$$inline_169$$ = "", $pStart$$inline_170$$, $x$$inline_171$$ =
546 0, $ql$$inline_172$$ = $query$$inline_158$$.length, $currentPart$$inline_173$$ = $JSCompiler_alias_NULL$$, $cp$$inline_174$$ = $JSCompiler_alias_NULL$$;$lc$$inline_168$$ = $cc$$inline_169$$, $cc$$inline_169$$ = $query$$inline_158$$.charAt($x$$inline_171$$), $x$$inline_171$$ < $ql$$inline_172$$;$x$$inline_171$$++) {
547 if("\\" != $lc$$inline_168$$) {
548 if($currentPart$$inline_173$$ || ($pStart$$inline_170$$ = $x$$inline_171$$, $currentPart$$inline_173$$ = {$query$:$JSCompiler_alias_NULL$$, $pseudos$:[], $attrs$:[], $classes$:[], $tag$:$JSCompiler_alias_NULL$$, $oper$:$JSCompiler_alias_NULL$$, id:$JSCompiler_alias_NULL$$, $getTag$:function $$currentPart$$inline_173$$$$getTag$$() {
549 return $caseSensitive$$inline_120$$ ? this.$otag$ : this.$tag$
550 }}, $inTag$$inline_167$$ = $x$$inline_171$$), 0 <= $cmf$$inline_180_inBrackets$$inline_161$$) {
551 if("]" == $cc$$inline_169$$) {
552 $cp$$inline_174$$.$attr$ ? $cp$$inline_174$$.$matchFor$ = $ts$$inline_159$$($addToCc$$inline_181_inMatchFor$$inline_163$$ || $cmf$$inline_180_inBrackets$$inline_161$$ + 1, $x$$inline_171$$) : $cp$$inline_174$$.$attr$ = $ts$$inline_159$$($cmf$$inline_180_inBrackets$$inline_161$$ + 1, $x$$inline_171$$);
553 if(($cmf$$inline_180_inBrackets$$inline_161$$ = $cp$$inline_174$$.$matchFor$) && ('"' == $cmf$$inline_180_inBrackets$$inline_161$$.charAt(0) || "'" == $cmf$$inline_180_inBrackets$$inline_161$$.charAt(0))) {
554 $cp$$inline_174$$.$matchFor$ = $cmf$$inline_180_inBrackets$$inline_161$$.slice(1, -1)
555 }
556 $currentPart$$inline_173$$.$attrs$.push($cp$$inline_174$$);
557 $cp$$inline_174$$ = $JSCompiler_alias_NULL$$;
558 $cmf$$inline_180_inBrackets$$inline_161$$ = $addToCc$$inline_181_inMatchFor$$inline_163$$ = -1
559 }else {
560 "=" == $cc$$inline_169$$ && ($addToCc$$inline_181_inMatchFor$$inline_163$$ = 0 <= "|~^$*".indexOf($lc$$inline_168$$) ? $lc$$inline_168$$ : "", $cp$$inline_174$$.type = $addToCc$$inline_181_inMatchFor$$inline_163$$ + $cc$$inline_169$$, $cp$$inline_174$$.$attr$ = $ts$$inline_159$$($cmf$$inline_180_inBrackets$$inline_161$$ + 1, $x$$inline_171$$ - $addToCc$$inline_181_inMatchFor$$inline_163$$.length), $addToCc$$inline_181_inMatchFor$$inline_163$$ = $x$$inline_171$$ + 1)
561 }
562 }else {
563 0 <= $inParens$$inline_162$$ ? ")" == $cc$$inline_169$$ && (0 <= $inPseudo$$inline_164$$ && ($cp$$inline_174$$.value = $ts$$inline_159$$($inParens$$inline_162$$ + 1, $x$$inline_171$$)), $inPseudo$$inline_164$$ = $inParens$$inline_162$$ = -1) : "#" == $cc$$inline_169$$ ? ($endAll$$inline_178$$(), $inId$$inline_166$$ = $x$$inline_171$$ + 1) : "." == $cc$$inline_169$$ ? ($endAll$$inline_178$$(), $inClass$$inline_165$$ = $x$$inline_171$$) : ":" == $cc$$inline_169$$ ? ($endAll$$inline_178$$(),
564 $inPseudo$$inline_164$$ = $x$$inline_171$$) : "[" == $cc$$inline_169$$ ? ($endAll$$inline_178$$(), $cmf$$inline_180_inBrackets$$inline_161$$ = $x$$inline_171$$, $cp$$inline_174$$ = {}) : "(" == $cc$$inline_169$$ ? (0 <= $inPseudo$$inline_164$$ && ($cp$$inline_174$$ = {name:$ts$$inline_159$$($inPseudo$$inline_164$$ + 1, $x$$inline_171$$), value:$JSCompiler_alias_NULL$$}, $currentPart$$inline_173$$.$pseudos$.push($cp$$inline_174$$)), $inParens$$inline_162$$ = $x$$inline_171$$) : " " == $cc$$inline_169$$ &&
565 $lc$$inline_168$$ != $cc$$inline_169$$ && ($endAll$$inline_178$$(), 0 <= $inPseudo$$inline_164$$ && $currentPart$$inline_173$$.$pseudos$.push({name:$ts$$inline_159$$($inPseudo$$inline_164$$ + 1, $x$$inline_171$$)}), $currentPart$$inline_173$$.$loops$ = $currentPart$$inline_173$$.$pseudos$.length || $currentPart$$inline_173$$.$attrs$.length || $currentPart$$inline_173$$.$classes$.length, $currentPart$$inline_173$$.$oquery$ = $currentPart$$inline_173$$.$query$ = $ts$$inline_159$$($pStart$$inline_170$$,
566 $x$$inline_171$$), $currentPart$$inline_173$$.$otag$ = $currentPart$$inline_173$$.$tag$ = $currentPart$$inline_173$$.$oper$ ? $JSCompiler_alias_NULL$$ : $currentPart$$inline_173$$.$tag$ || "*", $currentPart$$inline_173$$.$tag$ && ($currentPart$$inline_173$$.$tag$ = $currentPart$$inline_173$$.$tag$.toUpperCase()), $queryParts$$inline_160$$.length && $queryParts$$inline_160$$[$queryParts$$inline_160$$.length - 1].$oper$ && ($currentPart$$inline_173$$.$infixOper$ = $queryParts$$inline_160$$.pop(),
567 $currentPart$$inline_173$$.$query$ = $currentPart$$inline_173$$.$infixOper$.$query$ + " " + $currentPart$$inline_173$$.$query$), $queryParts$$inline_160$$.push($currentPart$$inline_173$$), $currentPart$$inline_173$$ = $JSCompiler_alias_NULL$$)
568 }
569 }
570 }
571 return $queryParts$$inline_160$$
572}
573function $agree$$inline_122$$($first$$inline_185$$, $second$$inline_186$$) {
574 return!$first$$inline_185$$ ? $second$$inline_186$$ : !$second$$inline_186$$ ? $first$$inline_185$$ : function() {
575 return $first$$inline_185$$.apply(window, arguments) && $second$$inline_186$$.apply(window, arguments)
576 }
577}
578function $isElement$$inline_123$$($n$$inline_187$$) {
579 return 1 == $n$$inline_187$$.nodeType
580}
581function $getAttr$$inline_124$$($elem$$inline_188$$, $attr$$inline_189$$) {
582 return!$elem$$inline_188$$ ? "" : "class" == $attr$$inline_189$$ ? $elem$$inline_188$$.className || "" : "for" == $attr$$inline_189$$ ? $elem$$inline_188$$.htmlFor || "" : "style" == $attr$$inline_189$$ ? $elem$$inline_188$$.style.cssText || "" : ($caseSensitive$$inline_120$$ ? $elem$$inline_188$$.getAttribute($attr$$inline_189$$) : $elem$$inline_188$$.getAttribute($attr$$inline_189$$, 2)) || ""
583}
584var $attrs$$inline_125$$ = {"*=":function($attr$$inline_190$$, $value$$inline_191$$) {
585 return function($elem$$inline_192$$) {
586 return 0 <= $getAttr$$inline_124$$($elem$$inline_192$$, $attr$$inline_190$$).indexOf($value$$inline_191$$)
587 }
588}, "^=":function($attr$$inline_193$$, $value$$inline_194$$) {
589 return function($elem$$inline_195$$) {
590 return 0 == $getAttr$$inline_124$$($elem$$inline_195$$, $attr$$inline_193$$).indexOf($value$$inline_194$$)
591 }
592}, "$=":function($attr$$inline_196$$, $value$$inline_197$$) {
593 return function($ea$$inline_199_elem$$inline_198$$) {
594 $ea$$inline_199_elem$$inline_198$$ = " " + $getAttr$$inline_124$$($ea$$inline_199_elem$$inline_198$$, $attr$$inline_196$$);
595 return $ea$$inline_199_elem$$inline_198$$.lastIndexOf($value$$inline_197$$) == $ea$$inline_199_elem$$inline_198$$.length - $value$$inline_197$$.length
596 }
597}, "~=":function($attr$$inline_200$$, $value$$inline_201$$) {
598 var $tval$$inline_202$$ = " " + $value$$inline_201$$ + " ";
599 return function($elem$$inline_203$$) {
600 return 0 <= (" " + $getAttr$$inline_124$$($elem$$inline_203$$, $attr$$inline_200$$) + " ").indexOf($tval$$inline_202$$)
601 }
602}, "|=":function($attr$$inline_204$$, $value$$inline_205$$) {
603 $value$$inline_205$$ = " " + $value$$inline_205$$;
604 return function($ea$$inline_207_elem$$inline_206$$) {
605 $ea$$inline_207_elem$$inline_206$$ = " " + $getAttr$$inline_124$$($ea$$inline_207_elem$$inline_206$$, $attr$$inline_204$$);
606 return $ea$$inline_207_elem$$inline_206$$ == $value$$inline_205$$ || 0 == $ea$$inline_207_elem$$inline_206$$.indexOf($value$$inline_205$$ + "-")
607 }
608}, "=":function($attr$$inline_208$$, $value$$inline_209$$) {
609 return function($elem$$inline_210$$) {
610 return $getAttr$$inline_124$$($elem$$inline_210$$, $attr$$inline_208$$) == $value$$inline_209$$
611 }
612}}, $noNextElementSibling$$inline_126$$ = "undefined" == typeof document.firstChild.nextElementSibling, $nSibling$$inline_127$$ = !$noNextElementSibling$$inline_126$$ ? "nextElementSibling" : "nextSibling", $pSibling$$inline_128$$ = !$noNextElementSibling$$inline_126$$ ? "previousElementSibling" : "previousSibling", $simpleNodeTest$$inline_129$$ = $noNextElementSibling$$inline_126$$ ? $isElement$$inline_123$$ : $goog$functions$TRUE$$;
613function $_lookLeft$$inline_130$$($node$$inline_211$$) {
614 for(;$node$$inline_211$$ = $node$$inline_211$$[$pSibling$$inline_128$$];) {
615 if($simpleNodeTest$$inline_129$$($node$$inline_211$$)) {
616 return $JSCompiler_alias_FALSE$$
617 }
618 }
619 return $JSCompiler_alias_TRUE$$
620}
621function $_lookRight$$inline_131$$($node$$inline_212$$) {
622 for(;$node$$inline_212$$ = $node$$inline_212$$[$nSibling$$inline_127$$];) {
623 if($simpleNodeTest$$inline_129$$($node$$inline_212$$)) {
624 return $JSCompiler_alias_FALSE$$
625 }
626 }
627 return $JSCompiler_alias_TRUE$$
628}
629function $getNodeIndex$$inline_132$$($node$$inline_213$$) {
630 var $root$$inline_214_te$$inline_220$$ = $node$$inline_213$$.parentNode, $i$$inline_215$$ = 0, $l$$inline_219_tret$$inline_216$$ = $root$$inline_214_te$$inline_220$$[$childNodesName$$inline_119$$], $ci$$inline_217$$ = $node$$inline_213$$._i || -1, $cl$$inline_218$$ = $root$$inline_214_te$$inline_220$$._l || -1;
631 if(!$l$$inline_219_tret$$inline_216$$) {
632 return-1
633 }
634 $l$$inline_219_tret$$inline_216$$ = $l$$inline_219_tret$$inline_216$$.length;
635 if($cl$$inline_218$$ == $l$$inline_219_tret$$inline_216$$ && 0 <= $ci$$inline_217$$ && 0 <= $cl$$inline_218$$) {
636 return $ci$$inline_217$$
637 }
638 $root$$inline_214_te$$inline_220$$._l = $l$$inline_219_tret$$inline_216$$;
639 $ci$$inline_217$$ = -1;
640 for($root$$inline_214_te$$inline_220$$ = $root$$inline_214_te$$inline_220$$.firstElementChild || $root$$inline_214_te$$inline_220$$.firstChild;$root$$inline_214_te$$inline_220$$;$root$$inline_214_te$$inline_220$$ = $root$$inline_214_te$$inline_220$$[$nSibling$$inline_127$$]) {
641 $simpleNodeTest$$inline_129$$($root$$inline_214_te$$inline_220$$) && ($root$$inline_214_te$$inline_220$$._i = ++$i$$inline_215$$, $node$$inline_213$$ === $root$$inline_214_te$$inline_220$$ && ($ci$$inline_217$$ = $i$$inline_215$$))
642 }
643 return $ci$$inline_217$$
644}
645function $isEven$$inline_133$$($elem$$inline_221$$) {
646 return!($getNodeIndex$$inline_132$$($elem$$inline_221$$) % 2)
647}
648function $isOdd$$inline_134$$($elem$$inline_222$$) {
649 return $getNodeIndex$$inline_132$$($elem$$inline_222$$) % 2
650}
651var $pseudos$$inline_135$$ = {checked:function() {
652 return function($elem$$inline_223$$) {
653 return $elem$$inline_223$$.checked || $elem$$inline_223$$.attributes.checked
654 }
655}, "first-child":function() {
656 return $_lookLeft$$inline_130$$
657}, "last-child":function() {
658 return $_lookRight$$inline_131$$
659}, "only-child":function() {
660 return function($node$$inline_224$$) {
661 return!$_lookLeft$$inline_130$$($node$$inline_224$$) || !$_lookRight$$inline_131$$($node$$inline_224$$) ? $JSCompiler_alias_FALSE$$ : $JSCompiler_alias_TRUE$$
662 }
663}, empty:function() {
664 return function($elem$$inline_225_x$$inline_227$$) {
665 for(var $cn$$inline_226$$ = $elem$$inline_225_x$$inline_227$$.childNodes, $elem$$inline_225_x$$inline_227$$ = $elem$$inline_225_x$$inline_227$$.childNodes.length - 1;0 <= $elem$$inline_225_x$$inline_227$$;$elem$$inline_225_x$$inline_227$$--) {
666 var $nt$$inline_228$$ = $cn$$inline_226$$[$elem$$inline_225_x$$inline_227$$].nodeType;
667 if(1 === $nt$$inline_228$$ || 3 == $nt$$inline_228$$) {
668 return $JSCompiler_alias_FALSE$$
669 }
670 }
671 return $JSCompiler_alias_TRUE$$
672 }
673}, contains:function($name$$inline_229$$, $condition$$inline_230$$) {
674 var $cz$$inline_231$$ = $condition$$inline_230$$.charAt(0);
675 if('"' == $cz$$inline_231$$ || "'" == $cz$$inline_231$$) {
676 $condition$$inline_230$$ = $condition$$inline_230$$.slice(1, -1)
677 }
678 return function($elem$$inline_232$$) {
679 return 0 <= $elem$$inline_232$$.innerHTML.indexOf($condition$$inline_230$$)
680 }
681}, not:function($name$$inline_233$$, $condition$$inline_234$$) {
682 var $p$$inline_235$$ = $getQueryParts$$inline_121$$($condition$$inline_234$$)[0], $ignores$$inline_236$$ = {$el$:1};
683 "*" != $p$$inline_235$$.$tag$ && ($ignores$$inline_236$$.$tag$ = 1);
684 $p$$inline_235$$.$classes$.length || ($ignores$$inline_236$$.$classes$ = 1);
685 var $ntf$$inline_237$$ = $getSimpleFilterFunc$$inline_137$$($p$$inline_235$$, $ignores$$inline_236$$);
686 return function($elem$$inline_238$$) {
687 return!$ntf$$inline_237$$($elem$$inline_238$$)
688 }
689}, "nth-child":function($name$$inline_239$$, $condition$$inline_240$$) {
690 if("odd" == $condition$$inline_240$$) {
691 return $isOdd$$inline_134$$
692 }
693 if("even" == $condition$$inline_240$$) {
694 return $isEven$$inline_133$$
695 }
696 if(-1 != $condition$$inline_240$$.indexOf("n")) {
697 var $tparts$$inline_242$$ = $condition$$inline_240$$.split("n", 2), $pred$$inline_243$$ = $tparts$$inline_242$$[0] ? "-" == $tparts$$inline_242$$[0] ? -1 : parseInt($tparts$$inline_242$$[0], 10) : 1, $idx$$inline_244$$ = $tparts$$inline_242$$[1] ? parseInt($tparts$$inline_242$$[1], 10) : 0, $lb$$inline_245$$ = 0, $ub$$inline_246$$ = -1;
698 0 < $pred$$inline_243$$ ? 0 > $idx$$inline_244$$ ? $idx$$inline_244$$ = $idx$$inline_244$$ % $pred$$inline_243$$ && $pred$$inline_243$$ + $idx$$inline_244$$ % $pred$$inline_243$$ : 0 < $idx$$inline_244$$ && ($idx$$inline_244$$ >= $pred$$inline_243$$ && ($lb$$inline_245$$ = $idx$$inline_244$$ - $idx$$inline_244$$ % $pred$$inline_243$$), $idx$$inline_244$$ %= $pred$$inline_243$$) : 0 > $pred$$inline_243$$ && ($pred$$inline_243$$ *= -1, 0 < $idx$$inline_244$$ && ($ub$$inline_246$$ = $idx$$inline_244$$,
699 $idx$$inline_244$$ %= $pred$$inline_243$$));
700 if(0 < $pred$$inline_243$$) {
701 return function($elem$$inline_249_i$$inline_250$$) {
702 $elem$$inline_249_i$$inline_250$$ = $getNodeIndex$$inline_132$$($elem$$inline_249_i$$inline_250$$);
703 return $elem$$inline_249_i$$inline_250$$ >= $lb$$inline_245$$ && (0 > $ub$$inline_246$$ || $elem$$inline_249_i$$inline_250$$ <= $ub$$inline_246$$) && $elem$$inline_249_i$$inline_250$$ % $pred$$inline_243$$ == $idx$$inline_244$$
704 }
705 }
706 $condition$$inline_240$$ = $idx$$inline_244$$
707 }
708 var $ncount$$inline_247$$ = parseInt($condition$$inline_240$$, 10);
709 return function($elem$$inline_251$$) {
710 return $getNodeIndex$$inline_132$$($elem$$inline_251$$) == $ncount$$inline_247$$
711 }
712}}, $defaultGetter$$inline_136$$ = $goog$userAgent$IE$$ ? function($cond$$inline_252$$) {
713 var $clc$$inline_253$$ = $cond$$inline_252$$.toLowerCase();
714 "class" == $clc$$inline_253$$ && ($cond$$inline_252$$ = "className");
715 return function($elem$$inline_254$$) {
716 return $caseSensitive$$inline_120$$ ? $elem$$inline_254$$.getAttribute($cond$$inline_252$$) : $elem$$inline_254$$[$cond$$inline_252$$] || $elem$$inline_254$$[$clc$$inline_253$$]
717 }
718} : function($cond$$inline_255$$) {
719 return function($elem$$inline_256$$) {
720 return $elem$$inline_256$$ && $elem$$inline_256$$.getAttribute && $elem$$inline_256$$.hasAttribute($cond$$inline_255$$)
721 }
722};
723function $getSimpleFilterFunc$$inline_137$$($query$$inline_257$$, $ignores$$inline_258$$) {
724 if(!$query$$inline_257$$) {
725 return $goog$functions$TRUE$$
726 }
727 var $ignores$$inline_258$$ = $ignores$$inline_258$$ || {}, $ff$$inline_259$$ = $JSCompiler_alias_NULL$$;
728 $ignores$$inline_258$$.$el$ || ($ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, $isElement$$inline_123$$));
729 $ignores$$inline_258$$.$tag$ || "*" != $query$$inline_257$$.$tag$ && ($ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, function($elem$$inline_260$$) {
730 return $elem$$inline_260$$ && $elem$$inline_260$$.tagName == $query$$inline_257$$.$getTag$()
731 }));
732 $ignores$$inline_258$$.$classes$ || $goog$array$forEach$$($query$$inline_257$$.$classes$, function($cname$$inline_261$$, $idx$$inline_262$$) {
733 var $re$$inline_263$$ = RegExp("(?:^|\\s)" + $cname$$inline_261$$ + "(?:\\s|$)");
734 $ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, function($elem$$inline_264$$) {
735 return $re$$inline_263$$.test($elem$$inline_264$$.className)
736 });
737 $ff$$inline_259$$.count = $idx$$inline_262$$
738 });
739 $ignores$$inline_258$$.$pseudos$ || $goog$array$forEach$$($query$$inline_257$$.$pseudos$, function($pseudo$$inline_265$$) {
740 var $pn$$inline_266$$ = $pseudo$$inline_265$$.name;
741 $pseudos$$inline_135$$[$pn$$inline_266$$] && ($ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, $pseudos$$inline_135$$[$pn$$inline_266$$]($pn$$inline_266$$, $pseudo$$inline_265$$.value)))
742 });
743 $ignores$$inline_258$$.$attrs$ || $goog$array$forEach$$($query$$inline_257$$.$attrs$, function($attr$$inline_267$$) {
744 var $matcher$$inline_268$$, $a$$inline_269$$ = $attr$$inline_267$$.$attr$;
745 $attr$$inline_267$$.type && $attrs$$inline_125$$[$attr$$inline_267$$.type] ? $matcher$$inline_268$$ = $attrs$$inline_125$$[$attr$$inline_267$$.type]($a$$inline_269$$, $attr$$inline_267$$.$matchFor$) : $a$$inline_269$$.length && ($matcher$$inline_268$$ = $defaultGetter$$inline_136$$($a$$inline_269$$));
746 $matcher$$inline_268$$ && ($ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, $matcher$$inline_268$$))
747 });
748 $ignores$$inline_258$$.id || $query$$inline_257$$.id && ($ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, function($elem$$inline_270$$) {
749 return!!$elem$$inline_270$$ && $elem$$inline_270$$.id == $query$$inline_257$$.id
750 }));
751 $ff$$inline_259$$ || "default" in $ignores$$inline_258$$ || ($ff$$inline_259$$ = $goog$functions$TRUE$$);
752 return $ff$$inline_259$$
753}
754var $_getElementsFuncCache$$inline_142$$ = {};
755function $getElementsFunc$$inline_143$$($query$$inline_290$$) {
756 var $retFunc$$inline_291$$ = $_getElementsFuncCache$$inline_142$$[$query$$inline_290$$.$query$];
757 if($retFunc$$inline_291$$) {
758 return $retFunc$$inline_291$$
759 }
760 var $io$$inline_292_oper$$inline_293$$ = $query$$inline_290$$.$infixOper$, $io$$inline_292_oper$$inline_293$$ = $io$$inline_292_oper$$inline_293$$ ? $io$$inline_292_oper$$inline_293$$.$oper$ : "", $filterFunc$$inline_294$$ = $getSimpleFilterFunc$$inline_137$$($query$$inline_290$$, {$el$:1}), $wildcardTag$$inline_295$$ = "*" == $query$$inline_290$$.$tag$, $ecs$$inline_296_skipFilters$$inline_297$$ = document.getElementsByClassName;
761 if($io$$inline_292_oper$$inline_293$$) {
762 if($ecs$$inline_296_skipFilters$$inline_297$$ = {$el$:1}, $wildcardTag$$inline_295$$ && ($ecs$$inline_296_skipFilters$$inline_297$$.$tag$ = 1), $filterFunc$$inline_294$$ = $getSimpleFilterFunc$$inline_137$$($query$$inline_290$$, $ecs$$inline_296_skipFilters$$inline_297$$), "+" == $io$$inline_292_oper$$inline_293$$) {
763 var $filterFunc$$inline_809$$ = $filterFunc$$inline_294$$, $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($node$$inline_810$$, $ret$$inline_811$$, $bag$$inline_812$$) {
764 for(;$node$$inline_810$$ = $node$$inline_810$$[$nSibling$$inline_127$$];) {
765 if(!$noNextElementSibling$$inline_126$$ || $isElement$$inline_123$$($node$$inline_810$$)) {
766 (!$bag$$inline_812$$ || $_isUnique$$inline_152$$($node$$inline_810$$, $bag$$inline_812$$)) && $filterFunc$$inline_809$$($node$$inline_810$$) && $ret$$inline_811$$.push($node$$inline_810$$);
767 break
768 }
769 }
770 return $ret$$inline_811$$
771 }
772 }else {
773 if("~" == $io$$inline_292_oper$$inline_293$$) {
774 var $filterFunc$$inline_814$$ = $filterFunc$$inline_294$$, $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_815_te$$inline_818$$, $ret$$inline_816$$, $bag$$inline_817$$) {
775 for($root$$inline_815_te$$inline_818$$ = $root$$inline_815_te$$inline_818$$[$nSibling$$inline_127$$];$root$$inline_815_te$$inline_818$$;) {
776 if($simpleNodeTest$$inline_129$$($root$$inline_815_te$$inline_818$$)) {
777 if($bag$$inline_817$$ && !$_isUnique$$inline_152$$($root$$inline_815_te$$inline_818$$, $bag$$inline_817$$)) {
778 break
779 }
780 $filterFunc$$inline_814$$($root$$inline_815_te$$inline_818$$) && $ret$$inline_816$$.push($root$$inline_815_te$$inline_818$$)
781 }
782 $root$$inline_815_te$$inline_818$$ = $root$$inline_815_te$$inline_818$$[$nSibling$$inline_127$$]
783 }
784 return $ret$$inline_816$$
785 }
786 }else {
787 if(">" == $io$$inline_292_oper$$inline_293$$) {
788 var $filterFunc$$inline_820$$ = $filterFunc$$inline_294$$, $filterFunc$$inline_820$$ = $filterFunc$$inline_820$$ || $goog$functions$TRUE$$, $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_821_te$$inline_824$$, $ret$$inline_822$$, $bag$$inline_823$$) {
789 for(var $x$$inline_825$$ = 0, $tret$$inline_826$$ = $root$$inline_821_te$$inline_824$$[$childNodesName$$inline_119$$];$root$$inline_821_te$$inline_824$$ = $tret$$inline_826$$[$x$$inline_825$$++];) {
790 $simpleNodeTest$$inline_129$$($root$$inline_821_te$$inline_824$$) && ((!$bag$$inline_823$$ || $_isUnique$$inline_152$$($root$$inline_821_te$$inline_824$$, $bag$$inline_823$$)) && $filterFunc$$inline_820$$($root$$inline_821_te$$inline_824$$, $x$$inline_825$$)) && $ret$$inline_822$$.push($root$$inline_821_te$$inline_824$$)
791 }
792 return $ret$$inline_822$$
793 }
794 }
795 }
796 }
797 }else {
798 if($query$$inline_290$$.id) {
799 $filterFunc$$inline_294$$ = !$query$$inline_290$$.$loops$ && $wildcardTag$$inline_295$$ ? $goog$functions$TRUE$$ : $getSimpleFilterFunc$$inline_137$$($query$$inline_290$$, {$el$:1, id:1}), $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_299$$, $arr$$inline_300$$) {
800 var $te$$inline_301$$ = $goog$dom$getDomHelper$$($root$$inline_299$$).$getElement$($query$$inline_290$$.id), $JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$;
801 if($JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ = $te$$inline_301$$ && $filterFunc$$inline_294$$($te$$inline_301$$)) {
802 if(!($JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ = 9 == $root$$inline_299$$.nodeType)) {
803 for($JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ = $te$$inline_301$$.parentNode;$JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ && $JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ != $root$$inline_299$$;) {
804 $JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ = $JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$.parentNode
805 }
806 $JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ = !!$JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$
807 }
808 }
809 if($JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$) {
810 return $getArr$$inline_117$$($te$$inline_301$$, $arr$$inline_300$$)
811 }
812 }
813 }else {
814 if($ecs$$inline_296_skipFilters$$inline_297$$ && /\{\s*\[native code\]\s*\}/.test(String($ecs$$inline_296_skipFilters$$inline_297$$)) && $query$$inline_290$$.$classes$.length && !$cssCaseBug$$inline_118$$) {
815 var $filterFunc$$inline_294$$ = $getSimpleFilterFunc$$inline_137$$($query$$inline_290$$, {$el$:1, $classes$:1, id:1}), $classesString$$inline_298$$ = $query$$inline_290$$.$classes$.join(" "), $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_302$$, $arr$$inline_303$$) {
816 for(var $ret$$inline_304$$ = $getArr$$inline_117$$(0, $arr$$inline_303$$), $te$$inline_305$$, $x$$inline_306$$ = 0, $tret$$inline_307$$ = $root$$inline_302$$.getElementsByClassName($classesString$$inline_298$$);$te$$inline_305$$ = $tret$$inline_307$$[$x$$inline_306$$++];) {
817 $filterFunc$$inline_294$$($te$$inline_305$$, $root$$inline_302$$) && $ret$$inline_304$$.push($te$$inline_305$$)
818 }
819 return $ret$$inline_304$$
820 }
821 }else {
822 !$wildcardTag$$inline_295$$ && !$query$$inline_290$$.$loops$ ? $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_308$$, $arr$$inline_309$$) {
823 for(var $ret$$inline_310$$ = $getArr$$inline_117$$(0, $arr$$inline_309$$), $te$$inline_311$$, $x$$inline_312$$ = 0, $tret$$inline_313$$ = $root$$inline_308$$.getElementsByTagName($query$$inline_290$$.$getTag$());$te$$inline_311$$ = $tret$$inline_313$$[$x$$inline_312$$++];) {
824 $ret$$inline_310$$.push($te$$inline_311$$)
825 }
826 return $ret$$inline_310$$
827 } : ($filterFunc$$inline_294$$ = $getSimpleFilterFunc$$inline_137$$($query$$inline_290$$, {$el$:1, $tag$:1, id:1}), $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_314$$, $arr$$inline_315$$) {
828 for(var $ret$$inline_316$$ = $getArr$$inline_117$$(0, $arr$$inline_315$$), $te$$inline_317$$, $x$$inline_318$$ = 0, $tret$$inline_319$$ = $root$$inline_314$$.getElementsByTagName($query$$inline_290$$.$getTag$());$te$$inline_317$$ = $tret$$inline_319$$[$x$$inline_318$$++];) {
829 $filterFunc$$inline_294$$($te$$inline_317$$, $root$$inline_314$$) && $ret$$inline_316$$.push($te$$inline_317$$)
830 }
831 return $ret$$inline_316$$
832 })
833 }
834 }
835 }
836 return $_getElementsFuncCache$$inline_142$$[$query$$inline_290$$.$query$] = $retFunc$$inline_291$$
837}
838var $_queryFuncCacheDOM$$inline_145$$ = {}, $_queryFuncCacheQSA$$inline_146$$ = {};
839function $getStepQueryFunc$$inline_147$$($query$$inline_332$$) {
840 var $qparts$$inline_333$$ = $getQueryParts$$inline_121$$($goog$string$trim$$($query$$inline_332$$));
841 if(1 == $qparts$$inline_333$$.length) {
842 var $tef$$inline_334$$ = $getElementsFunc$$inline_143$$($qparts$$inline_333$$[0]);
843 return function($r$$inline_336_root$$inline_335$$) {
844 if($r$$inline_336_root$$inline_335$$ = $tef$$inline_334$$($r$$inline_336_root$$inline_335$$, [])) {
845 $r$$inline_336_root$$inline_335$$.$nozip$ = $JSCompiler_alias_TRUE$$
846 }
847 return $r$$inline_336_root$$inline_335$$
848 }
849 }
850 return function($candidates$$inline_834_root$$inline_337$$) {
851 for(var $candidates$$inline_834_root$$inline_337$$ = $getArr$$inline_117$$($candidates$$inline_834_root$$inline_337$$), $qp$$inline_835_te$$inline_837$$, $gef$$inline_842_x$$inline_836$$, $qpl$$inline_838$$ = $qparts$$inline_333$$.length, $bag$$inline_839$$, $ret$$inline_840$$, $i$$inline_841$$ = 0;$i$$inline_841$$ < $qpl$$inline_838$$;$i$$inline_841$$++) {
852 $ret$$inline_840$$ = [];
853 $qp$$inline_835_te$$inline_837$$ = $qparts$$inline_333$$[$i$$inline_841$$];
854 $gef$$inline_842_x$$inline_836$$ = $candidates$$inline_834_root$$inline_337$$.length - 1;
855 0 < $gef$$inline_842_x$$inline_836$$ && ($bag$$inline_839$$ = {}, $ret$$inline_840$$.$nozip$ = $JSCompiler_alias_TRUE$$);
856 $gef$$inline_842_x$$inline_836$$ = $getElementsFunc$$inline_143$$($qp$$inline_835_te$$inline_837$$);
857 for(var $j$$inline_843$$ = 0;$qp$$inline_835_te$$inline_837$$ = $candidates$$inline_834_root$$inline_337$$[$j$$inline_843$$];$j$$inline_843$$++) {
858 $gef$$inline_842_x$$inline_836$$($qp$$inline_835_te$$inline_837$$, $ret$$inline_840$$, $bag$$inline_839$$)
859 }
860 if(!$ret$$inline_840$$.length) {
861 break
862 }
863 $candidates$$inline_834_root$$inline_337$$ = $ret$$inline_840$$
864 }
865 return $ret$$inline_840$$
866 }
867}
868var $qsaAvail$$inline_148$$ = !!document.querySelectorAll && (!$goog$userAgent$WEBKIT$$ || $goog$userAgent$isVersion$$("526"));
869function $getQueryFunc$$inline_149$$($query$$inline_338$$, $opt_forceDOM$$inline_339$$) {
870 if($qsaAvail$$inline_148$$) {
871 var $domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$ = $_queryFuncCacheQSA$$inline_146$$[$query$$inline_338$$];
872 if($domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$ && !$opt_forceDOM$$inline_339$$) {
873 return $domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$
874 }
875 }
876 if($domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$ = $_queryFuncCacheDOM$$inline_145$$[$query$$inline_338$$]) {
877 return $domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$
878 }
879 var $domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$ = $query$$inline_338$$.charAt(0), $nospace$$inline_343$$ = -1 == $query$$inline_338$$.indexOf(" ");
880 0 <= $query$$inline_338$$.indexOf("#") && $nospace$$inline_343$$ && ($opt_forceDOM$$inline_339$$ = $JSCompiler_alias_TRUE$$);
881 if($qsaAvail$$inline_148$$ && !$opt_forceDOM$$inline_339$$ && -1 == ">~+".indexOf($domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$) && (!$goog$userAgent$IE$$ || -1 == $query$$inline_338$$.indexOf(":")) && !($cssCaseBug$$inline_118$$ && 0 <= $query$$inline_338$$.indexOf(".")) && -1 == $query$$inline_338$$.indexOf(":contains") && -1 == $query$$inline_338$$.indexOf("|=")) {
882 var $tq$$inline_344$$ = 0 <= ">~+".indexOf($query$$inline_338$$.charAt($query$$inline_338$$.length - 1)) ? $query$$inline_338$$ + " *" : $query$$inline_338$$;
883 return $_queryFuncCacheQSA$$inline_146$$[$query$$inline_338$$] = function $$_queryFuncCacheQSA$$inline_146$$$$query$$inline_338$$$($root$$inline_346$$) {
884 try {
885 9 == $root$$inline_346$$.nodeType || $nospace$$inline_343$$ || $JSCompiler_alias_THROW$$("");
886 var $r$$inline_347$$ = $root$$inline_346$$.querySelectorAll($tq$$inline_344$$);
887 $goog$userAgent$IE$$ ? $r$$inline_347$$.$commentStrip$ = $JSCompiler_alias_TRUE$$ : $r$$inline_347$$.$nozip$ = $JSCompiler_alias_TRUE$$;
888 return $r$$inline_347$$
889 }catch($e$$inline_348$$) {
890 return $getQueryFunc$$inline_149$$($query$$inline_338$$, $JSCompiler_alias_TRUE$$)($root$$inline_346$$)
891 }
892 }
893 }
894 var $parts$$inline_345$$ = $query$$inline_338$$.split(/\s*,\s*/);
895 return $_queryFuncCacheDOM$$inline_145$$[$query$$inline_338$$] = 2 > $parts$$inline_345$$.length ? $getStepQueryFunc$$inline_147$$($query$$inline_338$$) : function($root$$inline_349$$) {
896 for(var $pindex$$inline_350$$ = 0, $ret$$inline_351$$ = [], $tp$$inline_352$$;$tp$$inline_352$$ = $parts$$inline_345$$[$pindex$$inline_350$$++];) {
897 $ret$$inline_351$$ = $ret$$inline_351$$.concat($getStepQueryFunc$$inline_147$$($tp$$inline_352$$)($root$$inline_349$$))
898 }
899 return $ret$$inline_351$$
900 }
901}
902var $_zipIdx$$inline_150$$ = 0, $_nodeUID$$inline_151$$ = $goog$userAgent$IE$$ ? function($node$$inline_353$$) {
903 return $caseSensitive$$inline_120$$ ? $node$$inline_353$$.getAttribute("_uid") || $node$$inline_353$$.setAttribute("_uid", ++$_zipIdx$$inline_150$$) || $_zipIdx$$inline_150$$ : $node$$inline_353$$.uniqueID
904} : function($node$$inline_354$$) {
905 return $node$$inline_354$$._uid || ($node$$inline_354$$._uid = ++$_zipIdx$$inline_150$$)
906};
907function $_isUnique$$inline_152$$($node$$inline_355$$, $bag$$inline_356$$) {
908 if(!$bag$$inline_356$$) {
909 return 1
910 }
911 var $id$$inline_357$$ = $_nodeUID$$inline_151$$($node$$inline_355$$);
912 return!$bag$$inline_356$$[$id$$inline_357$$] ? $bag$$inline_356$$[$id$$inline_357$$] = 1 : 0
913}
914function $_zip$$inline_153$$($arr$$inline_358$$) {
915 if($arr$$inline_358$$ && $arr$$inline_358$$.$nozip$) {
916 return $arr$$inline_358$$
917 }
918 var $ret$$inline_359$$ = [];
919 if(!$arr$$inline_358$$ || !$arr$$inline_358$$.length) {
920 return $ret$$inline_359$$
921 }
922 $arr$$inline_358$$[0] && $ret$$inline_359$$.push($arr$$inline_358$$[0]);
923 if(2 > $arr$$inline_358$$.length) {
924 return $ret$$inline_359$$
925 }
926 $_zipIdx$$inline_150$$++;
927 if($goog$userAgent$IE$$ && $caseSensitive$$inline_120$$) {
928 var $szidx$$inline_360$$ = $_zipIdx$$inline_150$$ + "";
929 $arr$$inline_358$$[0].setAttribute("_zipIdx", $szidx$$inline_360$$);
930 for(var $x$$inline_361$$ = 1, $te$$inline_362$$;$te$$inline_362$$ = $arr$$inline_358$$[$x$$inline_361$$];$x$$inline_361$$++) {
931 $arr$$inline_358$$[$x$$inline_361$$].getAttribute("_zipIdx") != $szidx$$inline_360$$ && $ret$$inline_359$$.push($te$$inline_362$$), $te$$inline_362$$.setAttribute("_zipIdx", $szidx$$inline_360$$)
932 }
933 }else {
934 if($goog$userAgent$IE$$ && $arr$$inline_358$$.$commentStrip$) {
935 try {
936 for($x$$inline_361$$ = 1;$te$$inline_362$$ = $arr$$inline_358$$[$x$$inline_361$$];$x$$inline_361$$++) {
937 $isElement$$inline_123$$($te$$inline_362$$) && $ret$$inline_359$$.push($te$$inline_362$$)
938 }
939 }catch($e$$inline_363$$) {
940 }
941 }else {
942 $arr$$inline_358$$[0] && ($arr$$inline_358$$[0]._zipIdx = $_zipIdx$$inline_150$$);
943 for($x$$inline_361$$ = 1;$te$$inline_362$$ = $arr$$inline_358$$[$x$$inline_361$$];$x$$inline_361$$++) {
944 $arr$$inline_358$$[$x$$inline_361$$]._zipIdx != $_zipIdx$$inline_150$$ && $ret$$inline_359$$.push($te$$inline_362$$), $te$$inline_362$$._zipIdx = $_zipIdx$$inline_150$$
945 }
946 }
947 }
948 return $ret$$inline_359$$
949}
950function $query$$inline_154$$($query$$inline_364$$, $root$$inline_365$$) {
951 if(!$query$$inline_364$$) {
952 return[]
953 }
954 if($query$$inline_364$$.constructor == Array) {
955 return $query$$inline_364$$
956 }
957 if(!$goog$isString$$($query$$inline_364$$)) {
958 return[$query$$inline_364$$]
959 }
960 if($goog$isString$$($root$$inline_365$$) && ($root$$inline_365$$ = $goog$isString$$($root$$inline_365$$) ? document.getElementById($root$$inline_365$$) : $root$$inline_365$$, !$root$$inline_365$$)) {
961 return[]
962 }
963 var $root$$inline_365$$ = $root$$inline_365$$ || document, $od$$inline_366_r$$inline_367$$ = $root$$inline_365$$.ownerDocument || $root$$inline_365$$.documentElement;
964 $caseSensitive$$inline_120$$ = $root$$inline_365$$.contentType && "application/xml" == $root$$inline_365$$.contentType || $goog$userAgent$OPERA$$ && ($root$$inline_365$$.doctype || "[object XMLDocument]" == $od$$inline_366_r$$inline_367$$.toString()) || !!$od$$inline_366_r$$inline_367$$ && ($goog$userAgent$IE$$ ? $od$$inline_366_r$$inline_367$$.xml : $root$$inline_365$$.xmlVersion || $od$$inline_366_r$$inline_367$$.xmlVersion);
965 return($od$$inline_366_r$$inline_367$$ = $getQueryFunc$$inline_149$$($query$$inline_364$$)($root$$inline_365$$)) && $od$$inline_366_r$$inline_367$$.$nozip$ ? $od$$inline_366_r$$inline_367$$ : $_zip$$inline_153$$($od$$inline_366_r$$inline_367$$)
966}
967$query$$inline_154$$.$pseudos$ = $pseudos$$inline_135$$;
968$goog$exportPath_$$("goog.dom.query", $query$$inline_154$$);
969$goog$exportPath_$$("goog.dom.query.pseudos", $query$$inline_154$$.$pseudos$);
970var $goog$events$BrowserFeature$HAS_W3C_BUTTON$$ = !$goog$userAgent$IE$$ || $goog$userAgent$isDocumentMode$$(9), $goog$events$BrowserFeature$HAS_W3C_EVENT_SUPPORT$$ = !$goog$userAgent$IE$$ || $goog$userAgent$isDocumentMode$$(9), $goog$events$BrowserFeature$SET_KEY_CODE_TO_PREVENT_DEFAULT$$ = $goog$userAgent$IE$$ && !$goog$userAgent$isVersion$$("9");
971!$goog$userAgent$WEBKIT$$ || $goog$userAgent$isVersion$$("528");
972$goog$userAgent$GECKO$$ && $goog$userAgent$isVersion$$("1.9b") || $goog$userAgent$IE$$ && $goog$userAgent$isVersion$$("8") || $goog$userAgent$OPERA$$ && $goog$userAgent$isVersion$$("9.5") || $goog$userAgent$WEBKIT$$ && $goog$userAgent$isVersion$$("528");
973$goog$userAgent$GECKO$$ && !$goog$userAgent$isVersion$$("8") || $goog$userAgent$IE$$ && $goog$userAgent$isVersion$$("9");
974function $goog$Disposable$$() {
975 0 != $goog$Disposable$MonitoringMode$OFF$$ && (this.$creationStack$ = Error().stack, $goog$getUid$$(this))
976}
977var $goog$Disposable$MonitoringMode$OFF$$ = 0;
978$goog$Disposable$$.prototype.$disposed_$ = $JSCompiler_alias_FALSE$$;
979function $goog$events$Event$$($type$$55$$, $opt_target$$1$$) {
980 this.type = $type$$55$$;
981 this.currentTarget = this.target = $opt_target$$1$$
982}
983$JSCompiler_prototypeAlias$$ = $goog$events$Event$$.prototype;
984$JSCompiler_prototypeAlias$$.$propagationStopped_$ = $JSCompiler_alias_FALSE$$;
985$JSCompiler_prototypeAlias$$.defaultPrevented = $JSCompiler_alias_FALSE$$;
986$JSCompiler_prototypeAlias$$.$returnValue_$ = $JSCompiler_alias_TRUE$$;
987$JSCompiler_prototypeAlias$$.stopPropagation = function $$JSCompiler_prototypeAlias$$$stopPropagation$() {
988 this.$propagationStopped_$ = $JSCompiler_alias_TRUE$$
989};
990$JSCompiler_prototypeAlias$$.preventDefault = function $$JSCompiler_prototypeAlias$$$preventDefault$() {
991 this.defaultPrevented = $JSCompiler_alias_TRUE$$;
992 this.$returnValue_$ = $JSCompiler_alias_FALSE$$
993};
994function $goog$events$Event$preventDefault$$($e$$15$$) {
995 $e$$15$$.preventDefault()
996}
997;function $goog$reflect$sinkValue$$($x$$67$$) {
998 $goog$reflect$sinkValue$$[" "]($x$$67$$);
999 return $x$$67$$
1000}
1001$goog$reflect$sinkValue$$[" "] = $goog$nullFunction$$;
1002function $goog$events$BrowserEvent$$($opt_e$$, $opt_currentTarget$$) {
1003 $opt_e$$ && this.init($opt_e$$, $opt_currentTarget$$)
1004}
1005$goog$inherits$$($goog$events$BrowserEvent$$, $goog$events$Event$$);
1006var $goog$events$BrowserEvent$IEButtonMap$$ = [1, 4, 2];
1007$JSCompiler_prototypeAlias$$ = $goog$events$BrowserEvent$$.prototype;
1008$JSCompiler_prototypeAlias$$.target = $JSCompiler_alias_NULL$$;
1009$JSCompiler_prototypeAlias$$.relatedTarget = $JSCompiler_alias_NULL$$;
1010$JSCompiler_prototypeAlias$$.offsetX = 0;
1011$JSCompiler_prototypeAlias$$.offsetY = 0;
1012$JSCompiler_prototypeAlias$$.clientX = 0;
1013$JSCompiler_prototypeAlias$$.clientY = 0;
1014$JSCompiler_prototypeAlias$$.screenX = 0;
1015$JSCompiler_prototypeAlias$$.screenY = 0;
1016$JSCompiler_prototypeAlias$$.button = 0;
1017$JSCompiler_prototypeAlias$$.keyCode = 0;
1018$JSCompiler_prototypeAlias$$.charCode = 0;
1019$JSCompiler_prototypeAlias$$.ctrlKey = $JSCompiler_alias_FALSE$$;
1020$JSCompiler_prototypeAlias$$.altKey = $JSCompiler_alias_FALSE$$;
1021$JSCompiler_prototypeAlias$$.shiftKey = $JSCompiler_alias_FALSE$$;
1022$JSCompiler_prototypeAlias$$.metaKey = $JSCompiler_alias_FALSE$$;
1023$JSCompiler_prototypeAlias$$.$platformModifierKey$ = $JSCompiler_alias_FALSE$$;
1024$JSCompiler_prototypeAlias$$.$event_$ = $JSCompiler_alias_NULL$$;
1025$JSCompiler_prototypeAlias$$.init = function $$JSCompiler_prototypeAlias$$$init$($e$$17$$, $opt_currentTarget$$1$$) {
1026 var $type$$57$$ = this.type = $e$$17$$.type;
1027 $goog$events$Event$$.call(this, $type$$57$$);
1028 this.target = $e$$17$$.target || $e$$17$$.srcElement;
1029 this.currentTarget = $opt_currentTarget$$1$$;
1030 var $relatedTarget$$ = $e$$17$$.relatedTarget;
1031 if($relatedTarget$$) {
1032 if($goog$userAgent$GECKO$$) {
1033 var $JSCompiler_inline_result$$48$$;
1034 a: {
1035 try {
1036 $goog$reflect$sinkValue$$($relatedTarget$$.nodeName);
1037 $JSCompiler_inline_result$$48$$ = $JSCompiler_alias_TRUE$$;
1038 break a
1039 }catch($e$$inline_379$$) {
1040 }
1041 $JSCompiler_inline_result$$48$$ = $JSCompiler_alias_FALSE$$
1042 }
1043 $JSCompiler_inline_result$$48$$ || ($relatedTarget$$ = $JSCompiler_alias_NULL$$)
1044 }
1045 }else {
1046 "mouseover" == $type$$57$$ ? $relatedTarget$$ = $e$$17$$.fromElement : "mouseout" == $type$$57$$ && ($relatedTarget$$ = $e$$17$$.toElement)
1047 }
1048 this.relatedTarget = $relatedTarget$$;
1049 this.offsetX = $goog$userAgent$WEBKIT$$ || $e$$17$$.offsetX !== $JSCompiler_alias_VOID$$ ? $e$$17$$.offsetX : $e$$17$$.layerX;
1050 this.offsetY = $goog$userAgent$WEBKIT$$ || $e$$17$$.offsetY !== $JSCompiler_alias_VOID$$ ? $e$$17$$.offsetY : $e$$17$$.layerY;
1051 this.clientX = $e$$17$$.clientX !== $JSCompiler_alias_VOID$$ ? $e$$17$$.clientX : $e$$17$$.pageX;
1052 this.clientY = $e$$17$$.clientY !== $JSCompiler_alias_VOID$$ ? $e$$17$$.clientY : $e$$17$$.pageY;
1053 this.screenX = $e$$17$$.screenX || 0;
1054 this.screenY = $e$$17$$.screenY || 0;
1055 this.button = $e$$17$$.button;
1056 this.keyCode = $e$$17$$.keyCode || 0;
1057 this.charCode = $e$$17$$.charCode || ("keypress" == $type$$57$$ ? $e$$17$$.keyCode : 0);
1058 this.ctrlKey = $e$$17$$.ctrlKey;
1059 this.altKey = $e$$17$$.altKey;
1060 this.shiftKey = $e$$17$$.shiftKey;
1061 this.metaKey = $e$$17$$.metaKey;
1062 this.$platformModifierKey$ = $goog$userAgent$detectedMac_$$ ? $e$$17$$.metaKey : $e$$17$$.ctrlKey;
1063 this.state = $e$$17$$.state;
1064 this.$event_$ = $e$$17$$;
1065 $e$$17$$.defaultPrevented && this.preventDefault();
1066 delete this.$propagationStopped_$
1067};
1068function $JSCompiler_StaticMethods_isMouseActionButton$$($JSCompiler_StaticMethods_isMouseActionButton$self$$) {
1069 return($goog$events$BrowserFeature$HAS_W3C_BUTTON$$ ? 0 == $JSCompiler_StaticMethods_isMouseActionButton$self$$.$event_$.button : "click" == $JSCompiler_StaticMethods_isMouseActionButton$self$$.type ? $JSCompiler_alias_TRUE$$ : !!($JSCompiler_StaticMethods_isMouseActionButton$self$$.$event_$.button & $goog$events$BrowserEvent$IEButtonMap$$[0])) && !($goog$userAgent$WEBKIT$$ && $goog$userAgent$detectedMac_$$ && $JSCompiler_StaticMethods_isMouseActionButton$self$$.ctrlKey)
1070}
1071$JSCompiler_prototypeAlias$$.stopPropagation = function $$JSCompiler_prototypeAlias$$$stopPropagation$() {
1072 $goog$events$BrowserEvent$$.$superClass_$.stopPropagation.call(this);
1073 this.$event_$.stopPropagation ? this.$event_$.stopPropagation() : this.$event_$.cancelBubble = $JSCompiler_alias_TRUE$$
1074};
1075$JSCompiler_prototypeAlias$$.preventDefault = function $$JSCompiler_prototypeAlias$$$preventDefault$() {
1076 $goog$events$BrowserEvent$$.$superClass_$.preventDefault.call(this);
1077 var $be$$ = this.$event_$;
1078 if($be$$.preventDefault) {
1079 $be$$.preventDefault()
1080 }else {
1081 if($be$$.returnValue = $JSCompiler_alias_FALSE$$, $goog$events$BrowserFeature$SET_KEY_CODE_TO_PREVENT_DEFAULT$$) {
1082 try {
1083 if($be$$.ctrlKey || 112 <= $be$$.keyCode && 123 >= $be$$.keyCode) {
1084 $be$$.keyCode = -1
1085 }
1086 }catch($ex$$1$$) {
1087 }
1088 }
1089 }
1090};
1091$JSCompiler_prototypeAlias$$.$getBrowserEvent$ = $JSCompiler_get$$("$event_$");
1092function $goog$events$Listener$$() {
1093}
1094var $goog$events$Listener$counter_$$ = 0;
1095$JSCompiler_prototypeAlias$$ = $goog$events$Listener$$.prototype;
1096$JSCompiler_prototypeAlias$$.key = 0;
1097$JSCompiler_prototypeAlias$$.$removed$ = $JSCompiler_alias_FALSE$$;
1098$JSCompiler_prototypeAlias$$.$callOnce$ = $JSCompiler_alias_FALSE$$;
1099$JSCompiler_prototypeAlias$$.init = function $$JSCompiler_prototypeAlias$$$init$($listener$$32$$, $proxy$$, $src$$6$$, $type$$58$$, $capture$$, $opt_handler$$) {
1100 $goog$isFunction$$($listener$$32$$) ? this.$isFunctionListener_$ = $JSCompiler_alias_TRUE$$ : $listener$$32$$ && $listener$$32$$.handleEvent && $goog$isFunction$$($listener$$32$$.handleEvent) ? this.$isFunctionListener_$ = $JSCompiler_alias_FALSE$$ : $JSCompiler_alias_THROW$$(Error("Invalid listener argument"));
1101 this.$listener$ = $listener$$32$$;
1102 this.$proxy$ = $proxy$$;
1103 this.src = $src$$6$$;
1104 this.type = $type$$58$$;
1105 this.capture = !!$capture$$;
1106 this.$handler$ = $opt_handler$$;
1107 this.$callOnce$ = $JSCompiler_alias_FALSE$$;
1108 this.key = ++$goog$events$Listener$counter_$$;
1109 this.$removed$ = $JSCompiler_alias_FALSE$$
1110};
1111$JSCompiler_prototypeAlias$$.handleEvent = function $$JSCompiler_prototypeAlias$$$handleEvent$($eventObject$$) {
1112 return this.$isFunctionListener_$ ? this.$listener$.call(this.$handler$ || this.src, $eventObject$$) : this.$listener$.handleEvent.call(this.$listener$, $eventObject$$)
1113};
1114var $goog$events$listeners_$$ = {}, $goog$events$listenerTree_$$ = {}, $goog$events$sources_$$ = {}, $goog$events$onStringMap_$$ = {};
1115function $goog$events$listen$$($src$$7$$, $type$$59$$, $key$$43_listener$$33$$, $capture$$1_opt_capt$$2$$, $opt_handler$$1$$) {
1116 if($type$$59$$) {
1117 if($goog$isArray$$($type$$59$$)) {
1118 for(var $i$$67_proxy$$1$$ = 0;$i$$67_proxy$$1$$ < $type$$59$$.length;$i$$67_proxy$$1$$++) {
1119 $goog$events$listen$$($src$$7$$, $type$$59$$[$i$$67_proxy$$1$$], $key$$43_listener$$33$$, $capture$$1_opt_capt$$2$$, $opt_handler$$1$$)
1120 }
1121 return $JSCompiler_alias_NULL$$
1122 }
1123 var $capture$$1_opt_capt$$2$$ = !!$capture$$1_opt_capt$$2$$, $listenerObj_map$$ = $goog$events$listenerTree_$$;
1124 $type$$59$$ in $listenerObj_map$$ || ($listenerObj_map$$[$type$$59$$] = {$count_$:0, $remaining_$:0});
1125 $listenerObj_map$$ = $listenerObj_map$$[$type$$59$$];
1126 $capture$$1_opt_capt$$2$$ in $listenerObj_map$$ || ($listenerObj_map$$[$capture$$1_opt_capt$$2$$] = {$count_$:0, $remaining_$:0}, $listenerObj_map$$.$count_$++);
1127 var $listenerObj_map$$ = $listenerObj_map$$[$capture$$1_opt_capt$$2$$], $srcUid$$ = $goog$getUid$$($src$$7$$), $listenerArray$$;
1128 $listenerObj_map$$.$remaining_$++;
1129 if($listenerObj_map$$[$srcUid$$]) {
1130 $listenerArray$$ = $listenerObj_map$$[$srcUid$$];
1131 for($i$$67_proxy$$1$$ = 0;$i$$67_proxy$$1$$ < $listenerArray$$.length;$i$$67_proxy$$1$$++) {
1132 if($listenerObj_map$$ = $listenerArray$$[$i$$67_proxy$$1$$], $listenerObj_map$$.$listener$ == $key$$43_listener$$33$$ && $listenerObj_map$$.$handler$ == $opt_handler$$1$$) {
1133 if($listenerObj_map$$.$removed$) {
1134 break
1135 }
1136 return $listenerArray$$[$i$$67_proxy$$1$$].key
1137 }
1138 }
1139 }else {
1140 $listenerArray$$ = $listenerObj_map$$[$srcUid$$] = [], $listenerObj_map$$.$count_$++
1141 }
1142 var $proxyCallbackFunction$$inline_384$$ = $goog$events$handleBrowserEvent_$$, $f$$inline_385$$ = $goog$events$BrowserFeature$HAS_W3C_EVENT_SUPPORT$$ ? function($eventObject$$inline_386$$) {
1143 return $proxyCallbackFunction$$inline_384$$.call($f$$inline_385$$.src, $f$$inline_385$$.key, $eventObject$$inline_386$$)
1144 } : function($eventObject$$inline_387_v$$inline_388$$) {
1145 $eventObject$$inline_387_v$$inline_388$$ = $proxyCallbackFunction$$inline_384$$.call($f$$inline_385$$.src, $f$$inline_385$$.key, $eventObject$$inline_387_v$$inline_388$$);
1146 if(!$eventObject$$inline_387_v$$inline_388$$) {
1147 return $eventObject$$inline_387_v$$inline_388$$
1148 }
1149 }, $i$$67_proxy$$1$$ = $f$$inline_385$$;
1150 $i$$67_proxy$$1$$.src = $src$$7$$;
1151 $listenerObj_map$$ = new $goog$events$Listener$$;
1152 $listenerObj_map$$.init($key$$43_listener$$33$$, $i$$67_proxy$$1$$, $src$$7$$, $type$$59$$, $capture$$1_opt_capt$$2$$, $opt_handler$$1$$);
1153 $key$$43_listener$$33$$ = $listenerObj_map$$.key;
1154 $i$$67_proxy$$1$$.key = $key$$43_listener$$33$$;
1155 $listenerArray$$.push($listenerObj_map$$);
1156 $goog$events$listeners_$$[$key$$43_listener$$33$$] = $listenerObj_map$$;
1157 $goog$events$sources_$$[$srcUid$$] || ($goog$events$sources_$$[$srcUid$$] = []);
1158 $goog$events$sources_$$[$srcUid$$].push($listenerObj_map$$);
1159 $src$$7$$.addEventListener ? ($src$$7$$ == $goog$global$$ || !$src$$7$$.$customEvent_$) && $src$$7$$.addEventListener($type$$59$$, $i$$67_proxy$$1$$, $capture$$1_opt_capt$$2$$) : $src$$7$$.attachEvent($type$$59$$ in $goog$events$onStringMap_$$ ? $goog$events$onStringMap_$$[$type$$59$$] : $goog$events$onStringMap_$$[$type$$59$$] = "on" + $type$$59$$, $i$$67_proxy$$1$$);
1160 return $key$$43_listener$$33$$
1161 }
1162 $JSCompiler_alias_THROW$$(Error("Invalid event type"))
1163}
1164function $goog$events$unlisten$$($listenerArray$$1_src$$10$$, $type$$61$$, $listener$$36$$, $capture$$2_opt_capt$$5$$, $opt_handler$$4$$) {
1165 if($goog$isArray$$($type$$61$$)) {
1166 for(var $i$$69$$ = 0;$i$$69$$ < $type$$61$$.length;$i$$69$$++) {
1167 $goog$events$unlisten$$($listenerArray$$1_src$$10$$, $type$$61$$[$i$$69$$], $listener$$36$$, $capture$$2_opt_capt$$5$$, $opt_handler$$4$$)
1168 }
1169 }else {
1170 if($capture$$2_opt_capt$$5$$ = !!$capture$$2_opt_capt$$5$$, $listenerArray$$1_src$$10$$ = $goog$events$getListeners_$$($listenerArray$$1_src$$10$$, $type$$61$$, $capture$$2_opt_capt$$5$$)) {
1171 for($i$$69$$ = 0;$i$$69$$ < $listenerArray$$1_src$$10$$.length;$i$$69$$++) {
1172 if($listenerArray$$1_src$$10$$[$i$$69$$].$listener$ == $listener$$36$$ && $listenerArray$$1_src$$10$$[$i$$69$$].capture == $capture$$2_opt_capt$$5$$ && $listenerArray$$1_src$$10$$[$i$$69$$].$handler$ == $opt_handler$$4$$) {
1173 $goog$events$unlistenByKey$$($listenerArray$$1_src$$10$$[$i$$69$$].key);
1174 break
1175 }
1176 }
1177 }
1178 }
1179}
1180function $goog$events$unlistenByKey$$($key$$45$$) {
1181 if(!$goog$events$listeners_$$[$key$$45$$]) {
1182 return $JSCompiler_alias_FALSE$$
1183 }
1184 var $listener$$37_listenerArray$$2$$ = $goog$events$listeners_$$[$key$$45$$];
1185 if($listener$$37_listenerArray$$2$$.$removed$) {
1186 return $JSCompiler_alias_FALSE$$
1187 }
1188 var $src$$11_srcUid$$1$$ = $listener$$37_listenerArray$$2$$.src, $type$$62$$ = $listener$$37_listenerArray$$2$$.type, $proxy$$2_sourcesArray$$ = $listener$$37_listenerArray$$2$$.$proxy$, $capture$$3$$ = $listener$$37_listenerArray$$2$$.capture;
1189 $src$$11_srcUid$$1$$.removeEventListener ? ($src$$11_srcUid$$1$$ == $goog$global$$ || !$src$$11_srcUid$$1$$.$customEvent_$) && $src$$11_srcUid$$1$$.removeEventListener($type$$62$$, $proxy$$2_sourcesArray$$, $capture$$3$$) : $src$$11_srcUid$$1$$.detachEvent && $src$$11_srcUid$$1$$.detachEvent($type$$62$$ in $goog$events$onStringMap_$$ ? $goog$events$onStringMap_$$[$type$$62$$] : $goog$events$onStringMap_$$[$type$$62$$] = "on" + $type$$62$$, $proxy$$2_sourcesArray$$);
1190 $src$$11_srcUid$$1$$ = $goog$getUid$$($src$$11_srcUid$$1$$);
1191 $goog$events$sources_$$[$src$$11_srcUid$$1$$] && ($proxy$$2_sourcesArray$$ = $goog$events$sources_$$[$src$$11_srcUid$$1$$], $goog$array$remove$$($proxy$$2_sourcesArray$$, $listener$$37_listenerArray$$2$$), 0 == $proxy$$2_sourcesArray$$.length && delete $goog$events$sources_$$[$src$$11_srcUid$$1$$]);
1192 $listener$$37_listenerArray$$2$$.$removed$ = $JSCompiler_alias_TRUE$$;
1193 if($listener$$37_listenerArray$$2$$ = $goog$events$listenerTree_$$[$type$$62$$][$capture$$3$$][$src$$11_srcUid$$1$$]) {
1194 $listener$$37_listenerArray$$2$$.$needsCleanup_$ = $JSCompiler_alias_TRUE$$, $goog$events$cleanUp_$$($type$$62$$, $capture$$3$$, $src$$11_srcUid$$1$$, $listener$$37_listenerArray$$2$$)
1195 }
1196 delete $goog$events$listeners_$$[$key$$45$$];
1197 return $JSCompiler_alias_TRUE$$
1198}
1199function $goog$events$cleanUp_$$($type$$63$$, $capture$$4$$, $srcUid$$2$$, $listenerArray$$3$$) {
1200 if(!$listenerArray$$3$$.$locked_$ && $listenerArray$$3$$.$needsCleanup_$) {
1201 for(var $oldIndex$$ = 0, $newIndex$$ = 0;$oldIndex$$ < $listenerArray$$3$$.length;$oldIndex$$++) {
1202 $listenerArray$$3$$[$oldIndex$$].$removed$ ? $listenerArray$$3$$[$oldIndex$$].$proxy$.src = $JSCompiler_alias_NULL$$ : ($oldIndex$$ != $newIndex$$ && ($listenerArray$$3$$[$newIndex$$] = $listenerArray$$3$$[$oldIndex$$]), $newIndex$$++)
1203 }
1204 $listenerArray$$3$$.length = $newIndex$$;
1205 $listenerArray$$3$$.$needsCleanup_$ = $JSCompiler_alias_FALSE$$;
1206 0 == $newIndex$$ && (delete $goog$events$listenerTree_$$[$type$$63$$][$capture$$4$$][$srcUid$$2$$], $goog$events$listenerTree_$$[$type$$63$$][$capture$$4$$].$count_$--, 0 == $goog$events$listenerTree_$$[$type$$63$$][$capture$$4$$].$count_$ && (delete $goog$events$listenerTree_$$[$type$$63$$][$capture$$4$$], $goog$events$listenerTree_$$[$type$$63$$].$count_$--), 0 == $goog$events$listenerTree_$$[$type$$63$$].$count_$ && delete $goog$events$listenerTree_$$[$type$$63$$])
1207 }
1208}
1209function $goog$events$getListeners_$$($obj$$66_objUid$$, $type$$65$$, $capture$$6$$) {
1210 var $map$$1$$ = $goog$events$listenerTree_$$;
1211 return $type$$65$$ in $map$$1$$ && ($map$$1$$ = $map$$1$$[$type$$65$$], $capture$$6$$ in $map$$1$$ && ($map$$1$$ = $map$$1$$[$capture$$6$$], $obj$$66_objUid$$ = $goog$getUid$$($obj$$66_objUid$$), $map$$1$$[$obj$$66_objUid$$])) ? $map$$1$$[$obj$$66_objUid$$] : $JSCompiler_alias_NULL$$
1212}
1213function $goog$events$fireListeners_$$($listenerArray$$5_map$$4$$, $obj$$69_objUid$$2$$, $type$$69$$, $capture$$9$$, $eventObject$$4$$) {
1214 var $retval$$ = 1, $obj$$69_objUid$$2$$ = $goog$getUid$$($obj$$69_objUid$$2$$);
1215 if($listenerArray$$5_map$$4$$[$obj$$69_objUid$$2$$]) {
1216 $listenerArray$$5_map$$4$$.$remaining_$--;
1217 $listenerArray$$5_map$$4$$ = $listenerArray$$5_map$$4$$[$obj$$69_objUid$$2$$];
1218 $listenerArray$$5_map$$4$$.$locked_$ ? $listenerArray$$5_map$$4$$.$locked_$++ : $listenerArray$$5_map$$4$$.$locked_$ = 1;
1219 try {
1220 for(var $length$$20$$ = $listenerArray$$5_map$$4$$.length, $i$$73$$ = 0;$i$$73$$ < $length$$20$$;$i$$73$$++) {
1221 var $listener$$43$$ = $listenerArray$$5_map$$4$$[$i$$73$$];
1222 $listener$$43$$ && !$listener$$43$$.$removed$ && ($retval$$ &= $goog$events$fireListener$$($listener$$43$$, $eventObject$$4$$) !== $JSCompiler_alias_FALSE$$)
1223 }
1224 }finally {
1225 $listenerArray$$5_map$$4$$.$locked_$--, $goog$events$cleanUp_$$($type$$69$$, $capture$$9$$, $obj$$69_objUid$$2$$, $listenerArray$$5_map$$4$$)
1226 }
1227 }
1228 return Boolean($retval$$)
1229}
1230function $goog$events$fireListener$$($listener$$44$$, $eventObject$$5$$) {
1231 $listener$$44$$.$callOnce$ && $goog$events$unlistenByKey$$($listener$$44$$.key);
1232 return $listener$$44$$.handleEvent($eventObject$$5$$)
1233}
1234function $goog$events$handleBrowserEvent_$$($key$$47$$, $opt_evt$$) {
1235 if(!$goog$events$listeners_$$[$key$$47$$]) {
1236 return $JSCompiler_alias_TRUE$$
1237 }
1238 var $listener$$45$$ = $goog$events$listeners_$$[$key$$47$$], $be$$1_type$$71$$ = $listener$$45$$.type, $map$$6$$ = $goog$events$listenerTree_$$;
1239 if(!($be$$1_type$$71$$ in $map$$6$$)) {
1240 return $JSCompiler_alias_TRUE$$
1241 }
1242 var $map$$6$$ = $map$$6$$[$be$$1_type$$71$$], $ieEvent_part$$inline_394_retval$$1$$, $targetsMap$$1$$;
1243 if(!$goog$events$BrowserFeature$HAS_W3C_EVENT_SUPPORT$$) {
1244 var $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$;
1245 if(!($JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$ = $opt_evt$$)) {
1246 a: {
1247 $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$ = ["window", "event"];
1248 for(var $cur$$inline_393_hasBubble$$1$$ = $goog$global$$;$ieEvent_part$$inline_394_retval$$1$$ = $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$.shift();) {
1249 if($cur$$inline_393_hasBubble$$1$$[$ieEvent_part$$inline_394_retval$$1$$] != $JSCompiler_alias_NULL$$) {
1250 $cur$$inline_393_hasBubble$$1$$ = $cur$$inline_393_hasBubble$$1$$[$ieEvent_part$$inline_394_retval$$1$$]
1251 }else {
1252 $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$ = $JSCompiler_alias_NULL$$;
1253 break a
1254 }
1255 }
1256 $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$ = $cur$$inline_393_hasBubble$$1$$
1257 }
1258 }
1259 $ieEvent_part$$inline_394_retval$$1$$ = $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$;
1260 $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$ = $JSCompiler_alias_TRUE$$ in $map$$6$$;
1261 $cur$$inline_393_hasBubble$$1$$ = $JSCompiler_alias_FALSE$$ in $map$$6$$;
1262 if($JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$) {
1263 if(0 > $ieEvent_part$$inline_394_retval$$1$$.keyCode || $ieEvent_part$$inline_394_retval$$1$$.returnValue != $JSCompiler_alias_VOID$$) {
1264 return $JSCompiler_alias_TRUE$$
1265 }
1266 a: {
1267 var $evt$$15_useReturnValue$$inline_397$$ = $JSCompiler_alias_FALSE$$;
1268 if(0 == $ieEvent_part$$inline_394_retval$$1$$.keyCode) {
1269 try {
1270 $ieEvent_part$$inline_394_retval$$1$$.keyCode = -1;
1271 break a
1272 }catch($ex$$inline_398$$) {
1273 $evt$$15_useReturnValue$$inline_397$$ = $JSCompiler_alias_TRUE$$
1274 }
1275 }
1276 if($evt$$15_useReturnValue$$inline_397$$ || $ieEvent_part$$inline_394_retval$$1$$.returnValue == $JSCompiler_alias_VOID$$) {
1277 $ieEvent_part$$inline_394_retval$$1$$.returnValue = $JSCompiler_alias_TRUE$$
1278 }
1279 }
1280 }
1281 $evt$$15_useReturnValue$$inline_397$$ = new $goog$events$BrowserEvent$$;
1282 $evt$$15_useReturnValue$$inline_397$$.init($ieEvent_part$$inline_394_retval$$1$$, this);
1283 $ieEvent_part$$inline_394_retval$$1$$ = $JSCompiler_alias_TRUE$$;
1284 try {
1285 if($JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$) {
1286 for(var $ancestors$$2$$ = [], $parent$$17$$ = $evt$$15_useReturnValue$$inline_397$$.currentTarget;$parent$$17$$;$parent$$17$$ = $parent$$17$$.parentNode) {
1287 $ancestors$$2$$.push($parent$$17$$)
1288 }
1289 $targetsMap$$1$$ = $map$$6$$[$JSCompiler_alias_TRUE$$];
1290 $targetsMap$$1$$.$remaining_$ = $targetsMap$$1$$.$count_$;
1291 for(var $i$$75$$ = $ancestors$$2$$.length - 1;!$evt$$15_useReturnValue$$inline_397$$.$propagationStopped_$ && 0 <= $i$$75$$ && $targetsMap$$1$$.$remaining_$;$i$$75$$--) {
1292 $evt$$15_useReturnValue$$inline_397$$.currentTarget = $ancestors$$2$$[$i$$75$$], $ieEvent_part$$inline_394_retval$$1$$ &= $goog$events$fireListeners_$$($targetsMap$$1$$, $ancestors$$2$$[$i$$75$$], $be$$1_type$$71$$, $JSCompiler_alias_TRUE$$, $evt$$15_useReturnValue$$inline_397$$)
1293 }
1294 if($cur$$inline_393_hasBubble$$1$$) {
1295 $targetsMap$$1$$ = $map$$6$$[$JSCompiler_alias_FALSE$$];
1296 $targetsMap$$1$$.$remaining_$ = $targetsMap$$1$$.$count_$;
1297 for($i$$75$$ = 0;!$evt$$15_useReturnValue$$inline_397$$.$propagationStopped_$ && $i$$75$$ < $ancestors$$2$$.length && $targetsMap$$1$$.$remaining_$;$i$$75$$++) {
1298 $evt$$15_useReturnValue$$inline_397$$.currentTarget = $ancestors$$2$$[$i$$75$$], $ieEvent_part$$inline_394_retval$$1$$ &= $goog$events$fireListeners_$$($targetsMap$$1$$, $ancestors$$2$$[$i$$75$$], $be$$1_type$$71$$, $JSCompiler_alias_FALSE$$, $evt$$15_useReturnValue$$inline_397$$)
1299 }
1300 }
1301 }else {
1302 $ieEvent_part$$inline_394_retval$$1$$ = $goog$events$fireListener$$($listener$$45$$, $evt$$15_useReturnValue$$inline_397$$)
1303 }
1304 }finally {
1305 $ancestors$$2$$ && ($ancestors$$2$$.length = 0)
1306 }
1307 return $ieEvent_part$$inline_394_retval$$1$$
1308 }
1309 $be$$1_type$$71$$ = new $goog$events$BrowserEvent$$($opt_evt$$, this);
1310 return $ieEvent_part$$inline_394_retval$$1$$ = $goog$events$fireListener$$($listener$$45$$, $be$$1_type$$71$$)
1311}
1312;function $goog$events$EventHandler$$($opt_handler$$7$$) {
1313 $goog$Disposable$$.call(this);
1314 this.$handler_$ = $opt_handler$$7$$;
1315 this.$keys_$ = []
1316}
1317$goog$inherits$$($goog$events$EventHandler$$, $goog$Disposable$$);
1318var $goog$events$EventHandler$typeArray_$$ = [];
1319function $JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$self$$, $src$$15$$, $type$$72$$, $opt_fn$$, $opt_capture$$1$$) {
1320 $goog$isArray$$($type$$72$$) || ($goog$events$EventHandler$typeArray_$$[0] = $type$$72$$, $type$$72$$ = $goog$events$EventHandler$typeArray_$$);
1321 for(var $i$$76$$ = 0;$i$$76$$ < $type$$72$$.length;$i$$76$$++) {
1322 var $key$$48$$ = $goog$events$listen$$($src$$15$$, $type$$72$$[$i$$76$$], $opt_fn$$ || $JSCompiler_StaticMethods_listen$self$$, $opt_capture$$1$$ || $JSCompiler_alias_FALSE$$, $JSCompiler_StaticMethods_listen$self$$.$handler_$ || $JSCompiler_StaticMethods_listen$self$$);
1323 $JSCompiler_StaticMethods_listen$self$$.$keys_$.push($key$$48$$)
1324 }
1325 return $JSCompiler_StaticMethods_listen$self$$
1326}
1327function $JSCompiler_StaticMethods_unlisten$$($JSCompiler_StaticMethods_unlisten$self$$, $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$, $i$$inline_408_type$$74$$, $listener$$inline_403_opt_fn$$2$$, $capture$$inline_406_opt_capture$$3$$, $opt_handler$$11_opt_handler$$inline_405$$) {
1328 if($goog$isArray$$($i$$inline_408_type$$74$$)) {
1329 for(var $i$$78$$ = 0;$i$$78$$ < $i$$inline_408_type$$74$$.length;$i$$78$$++) {
1330 $JSCompiler_StaticMethods_unlisten$$($JSCompiler_StaticMethods_unlisten$self$$, $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$, $i$$inline_408_type$$74$$[$i$$78$$], $listener$$inline_403_opt_fn$$2$$, $capture$$inline_406_opt_capture$$3$$, $opt_handler$$11_opt_handler$$inline_405$$)
1331 }
1332 }else {
1333 a: {
1334 $listener$$inline_403_opt_fn$$2$$ = $listener$$inline_403_opt_fn$$2$$ || $JSCompiler_StaticMethods_unlisten$self$$;
1335 $opt_handler$$11_opt_handler$$inline_405$$ = $opt_handler$$11_opt_handler$$inline_405$$ || $JSCompiler_StaticMethods_unlisten$self$$.$handler_$ || $JSCompiler_StaticMethods_unlisten$self$$;
1336 $capture$$inline_406_opt_capture$$3$$ = !!$capture$$inline_406_opt_capture$$3$$;
1337 if($key$$50_listener$$47_listenerArray$$inline_407_src$$18$$ = $goog$events$getListeners_$$($key$$50_listener$$47_listenerArray$$inline_407_src$$18$$, $i$$inline_408_type$$74$$, $capture$$inline_406_opt_capture$$3$$)) {
1338 for($i$$inline_408_type$$74$$ = 0;$i$$inline_408_type$$74$$ < $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$.length;$i$$inline_408_type$$74$$++) {
1339 if(!$key$$50_listener$$47_listenerArray$$inline_407_src$$18$$[$i$$inline_408_type$$74$$].$removed$ && $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$[$i$$inline_408_type$$74$$].$listener$ == $listener$$inline_403_opt_fn$$2$$ && $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$[$i$$inline_408_type$$74$$].capture == $capture$$inline_406_opt_capture$$3$$ && $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$[$i$$inline_408_type$$74$$].$handler$ == $opt_handler$$11_opt_handler$$inline_405$$) {
1340 $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$ = $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$[$i$$inline_408_type$$74$$];
1341 break a
1342 }
1343 }
1344 }
1345 $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$ = $JSCompiler_alias_NULL$$
1346 }
1347 $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$ && ($key$$50_listener$$47_listenerArray$$inline_407_src$$18$$ = $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$.key, $goog$events$unlistenByKey$$($key$$50_listener$$47_listenerArray$$inline_407_src$$18$$), $goog$array$remove$$($JSCompiler_StaticMethods_unlisten$self$$.$keys_$, $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$))
1348 }
1349 return $JSCompiler_StaticMethods_unlisten$self$$
1350}
1351$goog$events$EventHandler$$.prototype.$removeAll$ = function $$goog$events$EventHandler$$$$$removeAll$$() {
1352 $goog$array$forEach$$(this.$keys_$, $goog$events$unlistenByKey$$);
1353 this.$keys_$.length = 0
1354};
1355$goog$events$EventHandler$$.prototype.handleEvent = function $$goog$events$EventHandler$$$$handleEvent$() {
1356 $JSCompiler_alias_THROW$$(Error("EventHandler.handleEvent not implemented"))
1357};
1358function $goog$events$EventTarget$$() {
1359 $goog$Disposable$$.call(this)
1360}
1361$goog$inherits$$($goog$events$EventTarget$$, $goog$Disposable$$);
1362$JSCompiler_prototypeAlias$$ = $goog$events$EventTarget$$.prototype;
1363$JSCompiler_prototypeAlias$$.$customEvent_$ = $JSCompiler_alias_TRUE$$;
1364$JSCompiler_prototypeAlias$$.$parentEventTarget_$ = $JSCompiler_alias_NULL$$;
1365$JSCompiler_prototypeAlias$$.$setParentEventTarget$ = function $$JSCompiler_prototypeAlias$$$$setParentEventTarget$$($parent$$18$$) {
1366 this.$parentEventTarget_$ = $parent$$18$$
1367};
1368$JSCompiler_prototypeAlias$$.addEventListener = function $$JSCompiler_prototypeAlias$$$addEventListener$($type$$75$$, $handler$$3$$, $opt_capture$$4$$, $opt_handlerScope$$) {
1369 $goog$events$listen$$(this, $type$$75$$, $handler$$3$$, $opt_capture$$4$$, $opt_handlerScope$$)
1370};
1371$JSCompiler_prototypeAlias$$.removeEventListener = function $$JSCompiler_prototypeAlias$$$removeEventListener$($type$$76$$, $handler$$4$$, $opt_capture$$5$$, $opt_handlerScope$$1$$) {
1372 $goog$events$unlisten$$(this, $type$$76$$, $handler$$4$$, $opt_capture$$5$$, $opt_handlerScope$$1$$)
1373};
1374$JSCompiler_prototypeAlias$$.dispatchEvent = function $$JSCompiler_prototypeAlias$$$dispatchEvent$($JSCompiler_inline_result$$28_e$$23_e$$inline_411$$) {
1375 var $hasCapture$$inline_417_type$$inline_412$$ = $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.type || $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$, $map$$inline_413$$ = $goog$events$listenerTree_$$;
1376 if($hasCapture$$inline_417_type$$inline_412$$ in $map$$inline_413$$) {
1377 if($goog$isString$$($JSCompiler_inline_result$$28_e$$23_e$$inline_411$$)) {
1378 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$ = new $goog$events$Event$$($JSCompiler_inline_result$$28_e$$23_e$$inline_411$$, this)
1379 }else {
1380 if($JSCompiler_inline_result$$28_e$$23_e$$inline_411$$ instanceof $goog$events$Event$$) {
1381 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.target = $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.target || this
1382 }else {
1383 var $oldEvent$$inline_414_rv$$inline_415$$ = $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$, $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$ = new $goog$events$Event$$($hasCapture$$inline_417_type$$inline_412$$, this);
1384 $goog$object$extend$$($JSCompiler_inline_result$$28_e$$23_e$$inline_411$$, $oldEvent$$inline_414_rv$$inline_415$$)
1385 }
1386 }
1387 var $oldEvent$$inline_414_rv$$inline_415$$ = 1, $ancestors$$inline_416_current$$inline_421$$, $map$$inline_413$$ = $map$$inline_413$$[$hasCapture$$inline_417_type$$inline_412$$], $hasCapture$$inline_417_type$$inline_412$$ = $JSCompiler_alias_TRUE$$ in $map$$inline_413$$, $parent$$inline_419_targetsMap$$inline_418$$;
1388 if($hasCapture$$inline_417_type$$inline_412$$) {
1389 $ancestors$$inline_416_current$$inline_421$$ = [];
1390 for($parent$$inline_419_targetsMap$$inline_418$$ = this;$parent$$inline_419_targetsMap$$inline_418$$;$parent$$inline_419_targetsMap$$inline_418$$ = $parent$$inline_419_targetsMap$$inline_418$$.$parentEventTarget_$) {
1391 $ancestors$$inline_416_current$$inline_421$$.push($parent$$inline_419_targetsMap$$inline_418$$)
1392 }
1393 $parent$$inline_419_targetsMap$$inline_418$$ = $map$$inline_413$$[$JSCompiler_alias_TRUE$$];
1394 $parent$$inline_419_targetsMap$$inline_418$$.$remaining_$ = $parent$$inline_419_targetsMap$$inline_418$$.$count_$;
1395 for(var $i$$inline_420$$ = $ancestors$$inline_416_current$$inline_421$$.length - 1;!$JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$propagationStopped_$ && 0 <= $i$$inline_420$$ && $parent$$inline_419_targetsMap$$inline_418$$.$remaining_$;$i$$inline_420$$--) {
1396 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.currentTarget = $ancestors$$inline_416_current$$inline_421$$[$i$$inline_420$$], $oldEvent$$inline_414_rv$$inline_415$$ &= $goog$events$fireListeners_$$($parent$$inline_419_targetsMap$$inline_418$$, $ancestors$$inline_416_current$$inline_421$$[$i$$inline_420$$], $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.type, $JSCompiler_alias_TRUE$$, $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$) && $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$returnValue_$ !=
1397 $JSCompiler_alias_FALSE$$
1398 }
1399 }
1400 if($JSCompiler_alias_FALSE$$ in $map$$inline_413$$) {
1401 if($parent$$inline_419_targetsMap$$inline_418$$ = $map$$inline_413$$[$JSCompiler_alias_FALSE$$], $parent$$inline_419_targetsMap$$inline_418$$.$remaining_$ = $parent$$inline_419_targetsMap$$inline_418$$.$count_$, $hasCapture$$inline_417_type$$inline_412$$) {
1402 for($i$$inline_420$$ = 0;!$JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$propagationStopped_$ && $i$$inline_420$$ < $ancestors$$inline_416_current$$inline_421$$.length && $parent$$inline_419_targetsMap$$inline_418$$.$remaining_$;$i$$inline_420$$++) {
1403 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.currentTarget = $ancestors$$inline_416_current$$inline_421$$[$i$$inline_420$$], $oldEvent$$inline_414_rv$$inline_415$$ &= $goog$events$fireListeners_$$($parent$$inline_419_targetsMap$$inline_418$$, $ancestors$$inline_416_current$$inline_421$$[$i$$inline_420$$], $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.type, $JSCompiler_alias_FALSE$$, $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$) && $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$returnValue_$ !=
1404 $JSCompiler_alias_FALSE$$
1405 }
1406 }else {
1407 for($ancestors$$inline_416_current$$inline_421$$ = this;!$JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$propagationStopped_$ && $ancestors$$inline_416_current$$inline_421$$ && $parent$$inline_419_targetsMap$$inline_418$$.$remaining_$;$ancestors$$inline_416_current$$inline_421$$ = $ancestors$$inline_416_current$$inline_421$$.$parentEventTarget_$) {
1408 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.currentTarget = $ancestors$$inline_416_current$$inline_421$$, $oldEvent$$inline_414_rv$$inline_415$$ &= $goog$events$fireListeners_$$($parent$$inline_419_targetsMap$$inline_418$$, $ancestors$$inline_416_current$$inline_421$$, $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.type, $JSCompiler_alias_FALSE$$, $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$) && $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$returnValue_$ != $JSCompiler_alias_FALSE$$
1409 }
1410 }
1411 }
1412 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$ = Boolean($oldEvent$$inline_414_rv$$inline_415$$)
1413 }else {
1414 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$ = $JSCompiler_alias_TRUE$$
1415 }
1416 return $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$
1417};
1418function $goog$math$Box$$($top$$3$$, $right$$6$$, $bottom$$2$$, $left$$6$$) {
1419 this.top = $top$$3$$;
1420 this.right = $right$$6$$;
1421 this.bottom = $bottom$$2$$;
1422 this.left = $left$$6$$
1423}
1424$goog$math$Box$$.prototype.contains = function $$goog$math$Box$$$$contains$($other$$4$$) {
1425 return!this || !$other$$4$$ ? $JSCompiler_alias_FALSE$$ : $other$$4$$ instanceof $goog$math$Box$$ ? $other$$4$$.left >= this.left && $other$$4$$.right <= this.right && $other$$4$$.top >= this.top && $other$$4$$.bottom <= this.bottom : $other$$4$$.x >= this.left && $other$$4$$.x <= this.right && $other$$4$$.y >= this.top && $other$$4$$.y <= this.bottom
1426};
1427function $goog$math$Rect$$($x$$69$$, $y$$38$$, $w$$5$$, $h$$4$$) {
1428 this.left = $x$$69$$;
1429 this.top = $y$$38$$;
1430 this.width = $w$$5$$;
1431 this.height = $h$$4$$
1432}
1433$goog$math$Rect$$.prototype.contains = function $$goog$math$Rect$$$$contains$($another$$) {
1434 return $another$$ instanceof $goog$math$Rect$$ ? this.left <= $another$$.left && this.left + this.width >= $another$$.left + $another$$.width && this.top <= $another$$.top && this.top + this.height >= $another$$.top + $another$$.height : $another$$.x >= this.left && $another$$.x <= this.left + this.width && $another$$.y >= this.top && $another$$.y <= this.top + this.height
1435};
1436function $goog$style$setStyle$$($element$$29$$, $style$$, $opt_value$$5$$) {
1437 $goog$isString$$($style$$) ? $goog$style$setStyle_$$($element$$29$$, $opt_value$$5$$, $style$$) : $goog$object$forEach$$($style$$, $goog$partial$$($goog$style$setStyle_$$, $element$$29$$))
1438}
1439function $goog$style$setStyle_$$($element$$30$$, $value$$65$$, $style$$1$$) {
1440 $element$$30$$.style[$goog$string$toCamelCase$$($style$$1$$)] = $value$$65$$
1441}
1442function $goog$style$getComputedStyle$$($element$$32$$, $property$$4$$) {
1443 var $doc$$23_styles$$ = $goog$dom$getOwnerDocument$$($element$$32$$);
1444 return $doc$$23_styles$$.defaultView && $doc$$23_styles$$.defaultView.getComputedStyle && ($doc$$23_styles$$ = $doc$$23_styles$$.defaultView.getComputedStyle($element$$32$$, $JSCompiler_alias_NULL$$)) ? $doc$$23_styles$$[$property$$4$$] || $doc$$23_styles$$.getPropertyValue($property$$4$$) || "" : ""
1445}
1446function $goog$style$getCascadedStyle$$($element$$33$$, $style$$2$$) {
1447 return $element$$33$$.currentStyle ? $element$$33$$.currentStyle[$style$$2$$] : $JSCompiler_alias_NULL$$
1448}
1449function $goog$style$getStyle_$$($element$$34$$, $style$$3$$) {
1450 return $goog$style$getComputedStyle$$($element$$34$$, $style$$3$$) || $goog$style$getCascadedStyle$$($element$$34$$, $style$$3$$) || $element$$34$$.style && $element$$34$$.style[$style$$3$$]
1451}
1452function $goog$style$setPosition$$($el$$4$$, $arg1_y$$39$$, $opt_arg2$$) {
1453 var $x$$70$$, $buggyGeckoSubPixelPos$$ = $goog$userAgent$GECKO$$ && ($goog$userAgent$detectedMac_$$ || $goog$userAgent$X11$$) && $goog$userAgent$isVersion$$("1.9");
1454 $arg1_y$$39$$ instanceof $goog$math$Coordinate$$ ? ($x$$70$$ = $arg1_y$$39$$.x, $arg1_y$$39$$ = $arg1_y$$39$$.y) : ($x$$70$$ = $arg1_y$$39$$, $arg1_y$$39$$ = $opt_arg2$$);
1455 $el$$4$$.style.left = $goog$style$getPixelStyleValue_$$($x$$70$$, $buggyGeckoSubPixelPos$$);
1456 $el$$4$$.style.top = $goog$style$getPixelStyleValue_$$($arg1_y$$39$$, $buggyGeckoSubPixelPos$$)
1457}
1458function $goog$style$getBoundingClientRect_$$($doc$$26_el$$5$$) {
1459 var $rect$$4$$ = $doc$$26_el$$5$$.getBoundingClientRect();
1460 $goog$userAgent$IE$$ && ($doc$$26_el$$5$$ = $doc$$26_el$$5$$.ownerDocument, $rect$$4$$.left -= $doc$$26_el$$5$$.documentElement.clientLeft + $doc$$26_el$$5$$.body.clientLeft, $rect$$4$$.top -= $doc$$26_el$$5$$.documentElement.clientTop + $doc$$26_el$$5$$.body.clientTop);
1461 return $rect$$4$$
1462}
1463function $goog$style$getOffsetParent$$($element$$43_parent$$19$$) {
1464 if($goog$userAgent$IE$$ && !$goog$userAgent$isDocumentMode$$(8)) {
1465 return $element$$43_parent$$19$$.offsetParent
1466 }
1467 for(var $doc$$27$$ = $goog$dom$getOwnerDocument$$($element$$43_parent$$19$$), $positionStyle$$ = $goog$style$getStyle_$$($element$$43_parent$$19$$, "position"), $skipStatic$$ = "fixed" == $positionStyle$$ || "absolute" == $positionStyle$$, $element$$43_parent$$19$$ = $element$$43_parent$$19$$.parentNode;$element$$43_parent$$19$$ && $element$$43_parent$$19$$ != $doc$$27$$;$element$$43_parent$$19$$ = $element$$43_parent$$19$$.parentNode) {
1468 if($positionStyle$$ = $goog$style$getStyle_$$($element$$43_parent$$19$$, "position"), $skipStatic$$ = $skipStatic$$ && "static" == $positionStyle$$ && $element$$43_parent$$19$$ != $doc$$27$$.documentElement && $element$$43_parent$$19$$ != $doc$$27$$.body, !$skipStatic$$ && ($element$$43_parent$$19$$.scrollWidth > $element$$43_parent$$19$$.clientWidth || $element$$43_parent$$19$$.scrollHeight > $element$$43_parent$$19$$.clientHeight || "fixed" == $positionStyle$$ || "absolute" == $positionStyle$$ ||
1469 "relative" == $positionStyle$$)) {
1470 return $element$$43_parent$$19$$
1471 }
1472 }
1473 return $JSCompiler_alias_NULL$$
1474}
1475function $goog$style$getPageOffset$$($el$$8_scrollCoord_vpBox$$) {
1476 var $box$$7_doc$$inline_425$$, $doc$$28$$ = $goog$dom$getOwnerDocument$$($el$$8_scrollCoord_vpBox$$), $positionStyle$$1$$ = $goog$style$getStyle_$$($el$$8_scrollCoord_vpBox$$, "position"), $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ = $goog$userAgent$GECKO$$ && $doc$$28$$.getBoxObjectFor && !$el$$8_scrollCoord_vpBox$$.getBoundingClientRect && "absolute" == $positionStyle$$1$$ && ($box$$7_doc$$inline_425$$ = $doc$$28$$.getBoxObjectFor($el$$8_scrollCoord_vpBox$$)) && (0 > $box$$7_doc$$inline_425$$.screenX ||
1477 0 > $box$$7_doc$$inline_425$$.screenY), $pos$$2$$ = new $goog$math$Coordinate$$(0, 0), $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$;
1478 $box$$7_doc$$inline_425$$ = $doc$$28$$ ? $goog$dom$getOwnerDocument$$($doc$$28$$) : document;
1479 if($JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$ = $goog$userAgent$IE$$) {
1480 if($JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$ = !$goog$userAgent$isDocumentMode$$(9)) {
1481 $goog$dom$getDomHelper$$($box$$7_doc$$inline_425$$), $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$ = $JSCompiler_alias_FALSE$$
1482 }
1483 }
1484 $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$ = $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$ ? $box$$7_doc$$inline_425$$.body : $box$$7_doc$$inline_425$$.documentElement;
1485 if($el$$8_scrollCoord_vpBox$$ == $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$) {
1486 return $pos$$2$$
1487 }
1488 if($el$$8_scrollCoord_vpBox$$.getBoundingClientRect) {
1489 $box$$7_doc$$inline_425$$ = $goog$style$getBoundingClientRect_$$($el$$8_scrollCoord_vpBox$$), $el$$8_scrollCoord_vpBox$$ = $JSCompiler_StaticMethods_getDocumentScroll$$($goog$dom$getDomHelper$$($doc$$28$$)), $pos$$2$$.x = $box$$7_doc$$inline_425$$.left + $el$$8_scrollCoord_vpBox$$.x, $pos$$2$$.y = $box$$7_doc$$inline_425$$.top + $el$$8_scrollCoord_vpBox$$.y
1490 }else {
1491 if($doc$$28$$.getBoxObjectFor && !$BUGGY_GECKO_BOX_OBJECT_parent$$20$$) {
1492 $box$$7_doc$$inline_425$$ = $doc$$28$$.getBoxObjectFor($el$$8_scrollCoord_vpBox$$), $el$$8_scrollCoord_vpBox$$ = $doc$$28$$.getBoxObjectFor($JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$), $pos$$2$$.x = $box$$7_doc$$inline_425$$.screenX - $el$$8_scrollCoord_vpBox$$.screenX, $pos$$2$$.y = $box$$7_doc$$inline_425$$.screenY - $el$$8_scrollCoord_vpBox$$.screenY
1493 }else {
1494 $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ = $el$$8_scrollCoord_vpBox$$;
1495 do {
1496 $pos$$2$$.x += $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.offsetLeft;
1497 $pos$$2$$.y += $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.offsetTop;
1498 $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ != $el$$8_scrollCoord_vpBox$$ && ($pos$$2$$.x += $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.clientLeft || 0, $pos$$2$$.y += $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.clientTop || 0);
1499 if($goog$userAgent$WEBKIT$$ && "fixed" == $goog$style$getStyle_$$($BUGGY_GECKO_BOX_OBJECT_parent$$20$$, "position")) {
1500 $pos$$2$$.x += $doc$$28$$.body.scrollLeft;
1501 $pos$$2$$.y += $doc$$28$$.body.scrollTop;
1502 break
1503 }
1504 $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ = $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.offsetParent
1505 }while($BUGGY_GECKO_BOX_OBJECT_parent$$20$$ && $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ != $el$$8_scrollCoord_vpBox$$);
1506 if($goog$userAgent$OPERA$$ || $goog$userAgent$WEBKIT$$ && "absolute" == $positionStyle$$1$$) {
1507 $pos$$2$$.y -= $doc$$28$$.body.offsetTop
1508 }
1509 for($BUGGY_GECKO_BOX_OBJECT_parent$$20$$ = $el$$8_scrollCoord_vpBox$$;($BUGGY_GECKO_BOX_OBJECT_parent$$20$$ = $goog$style$getOffsetParent$$($BUGGY_GECKO_BOX_OBJECT_parent$$20$$)) && $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ != $doc$$28$$.body && $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ != $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$;) {
1510 if($pos$$2$$.x -= $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.scrollLeft, !$goog$userAgent$OPERA$$ || "TR" != $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.tagName) {
1511 $pos$$2$$.y -= $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.scrollTop
1512 }
1513 }
1514 }
1515 }
1516 return $pos$$2$$
1517}
1518function $goog$style$getRelativePosition$$($a$$28$$, $b$$23$$) {
1519 var $ap$$ = $goog$style$getClientPosition$$($a$$28$$), $bp$$ = $goog$style$getClientPosition$$($b$$23$$);
1520 return new $goog$math$Coordinate$$($ap$$.x - $bp$$.x, $ap$$.y - $bp$$.y)
1521}
1522function $goog$style$getClientPosition$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$) {
1523 var $JSCompiler_temp_const$$38_pos$$4$$ = new $goog$math$Coordinate$$;
1524 if(1 == $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.nodeType) {
1525 if($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.getBoundingClientRect) {
1526 var $box$$8_scrollCoord$$1$$ = $goog$style$getBoundingClientRect_$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$);
1527 $JSCompiler_temp_const$$38_pos$$4$$.x = $box$$8_scrollCoord$$1$$.left;
1528 $JSCompiler_temp_const$$38_pos$$4$$.y = $box$$8_scrollCoord$$1$$.top
1529 }else {
1530 var $box$$8_scrollCoord$$1$$ = $JSCompiler_StaticMethods_getDocumentScroll$$($goog$dom$getDomHelper$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$)), $pageCoord$$ = $goog$style$getPageOffset$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$);
1531 $JSCompiler_temp_const$$38_pos$$4$$.x = $pageCoord$$.x - $box$$8_scrollCoord$$1$$.x;
1532 $JSCompiler_temp_const$$38_pos$$4$$.y = $pageCoord$$.y - $box$$8_scrollCoord$$1$$.y
1533 }
1534 if($goog$userAgent$GECKO$$ && !$goog$userAgent$isVersion$$(12)) {
1535 var $isAbstractedEvent_property$$inline_428$$;
1536 $goog$userAgent$IE$$ ? $isAbstractedEvent_property$$inline_428$$ = "-ms-transform" : $goog$userAgent$WEBKIT$$ ? $isAbstractedEvent_property$$inline_428$$ = "-webkit-transform" : $goog$userAgent$OPERA$$ ? $isAbstractedEvent_property$$inline_428$$ = "-o-transform" : $goog$userAgent$GECKO$$ && ($isAbstractedEvent_property$$inline_428$$ = "-moz-transform");
1537 var $targetEvent_transform$$inline_429$$;
1538 $isAbstractedEvent_property$$inline_428$$ && ($targetEvent_transform$$inline_429$$ = $goog$style$getStyle_$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$, $isAbstractedEvent_property$$inline_428$$));
1539 $targetEvent_transform$$inline_429$$ || ($targetEvent_transform$$inline_429$$ = $goog$style$getStyle_$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$, "transform"));
1540 $targetEvent_transform$$inline_429$$ ? ($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$ = $targetEvent_transform$$inline_429$$.match($goog$style$MATRIX_TRANSLATION_REGEX_$$), $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$ = !$JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$ ? new $goog$math$Coordinate$$(0, 0) : new $goog$math$Coordinate$$(parseFloat($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$[1]), parseFloat($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$[2]))) :
1541 $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$ = new $goog$math$Coordinate$$(0, 0);
1542 $JSCompiler_temp_const$$38_pos$$4$$ = new $goog$math$Coordinate$$($JSCompiler_temp_const$$38_pos$$4$$.x + $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.x, $JSCompiler_temp_const$$38_pos$$4$$.y + $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.y)
1543 }
1544 }else {
1545 $isAbstractedEvent_property$$inline_428$$ = $goog$isFunction$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.$getBrowserEvent$), $targetEvent_transform$$inline_429$$ = $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$, $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.targetTouches ? $targetEvent_transform$$inline_429$$ = $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.targetTouches[0] : $isAbstractedEvent_property$$inline_428$$ && $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.$event_$.targetTouches &&
1546 ($targetEvent_transform$$inline_429$$ = $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.$event_$.targetTouches[0]), $JSCompiler_temp_const$$38_pos$$4$$.x = $targetEvent_transform$$inline_429$$.clientX, $JSCompiler_temp_const$$38_pos$$4$$.y = $targetEvent_transform$$inline_429$$.clientY
1547 }
1548 return $JSCompiler_temp_const$$38_pos$$4$$
1549}
1550function $goog$style$setSize$$($element$$47$$, $w$$6$$, $h$$5_opt_h$$) {
1551 $w$$6$$ instanceof $goog$math$Size$$ ? ($h$$5_opt_h$$ = $w$$6$$.height, $w$$6$$ = $w$$6$$.width) : $h$$5_opt_h$$ == $JSCompiler_alias_VOID$$ && $JSCompiler_alias_THROW$$(Error("missing height argument"));
1552 $element$$47$$.style.width = $goog$style$getPixelStyleValue_$$($w$$6$$, $JSCompiler_alias_TRUE$$);
1553 $element$$47$$.style.height = $goog$style$getPixelStyleValue_$$($h$$5_opt_h$$, $JSCompiler_alias_TRUE$$)
1554}
1555function $goog$style$getPixelStyleValue_$$($value$$66$$, $round$$) {
1556 "number" == typeof $value$$66$$ && ($value$$66$$ = ($round$$ ? Math.round($value$$66$$) : $value$$66$$) + "px");
1557 return $value$$66$$
1558}
1559function $goog$style$getSize$$($element$$50_size$$10$$) {
1560 if("none" != $goog$style$getStyle_$$($element$$50_size$$10$$, "display")) {
1561 return $goog$style$getSizeWithDisplay_$$($element$$50_size$$10$$)
1562 }
1563 var $style$$4$$ = $element$$50_size$$10$$.style, $originalDisplay$$ = $style$$4$$.display, $originalVisibility$$ = $style$$4$$.visibility, $originalPosition$$ = $style$$4$$.position;
1564 $style$$4$$.visibility = "hidden";
1565 $style$$4$$.position = "absolute";
1566 $style$$4$$.display = "inline";
1567 $element$$50_size$$10$$ = $goog$style$getSizeWithDisplay_$$($element$$50_size$$10$$);
1568 $style$$4$$.display = $originalDisplay$$;
1569 $style$$4$$.position = $originalPosition$$;
1570 $style$$4$$.visibility = $originalVisibility$$;
1571 return $element$$50_size$$10$$
1572}
1573function $goog$style$getSizeWithDisplay_$$($clientRect_element$$51$$) {
1574 var $offsetWidth$$ = $clientRect_element$$51$$.offsetWidth, $offsetHeight$$ = $clientRect_element$$51$$.offsetHeight, $webkitOffsetsZero$$ = $goog$userAgent$WEBKIT$$ && !$offsetWidth$$ && !$offsetHeight$$;
1575 return(!$goog$isDef$$($offsetWidth$$) || $webkitOffsetsZero$$) && $clientRect_element$$51$$.getBoundingClientRect ? ($clientRect_element$$51$$ = $goog$style$getBoundingClientRect_$$($clientRect_element$$51$$), new $goog$math$Size$$($clientRect_element$$51$$.right - $clientRect_element$$51$$.left, $clientRect_element$$51$$.bottom - $clientRect_element$$51$$.top)) : new $goog$math$Size$$($offsetWidth$$, $offsetHeight$$)
1576}
1577function $goog$style$getBounds$$($element$$52_s$$18$$) {
1578 var $o$$1$$ = $goog$style$getPageOffset$$($element$$52_s$$18$$), $element$$52_s$$18$$ = $goog$style$getSize$$($element$$52_s$$18$$);
1579 return new $goog$math$Rect$$($o$$1$$.x, $o$$1$$.y, $element$$52_s$$18$$.width, $element$$52_s$$18$$.height)
1580}
1581function $goog$style$setOpacity$$($el$$15$$, $alpha$$3$$) {
1582 var $style$$6$$ = $el$$15$$.style;
1583 "opacity" in $style$$6$$ ? $style$$6$$.opacity = $alpha$$3$$ : "MozOpacity" in $style$$6$$ ? $style$$6$$.MozOpacity = $alpha$$3$$ : "filter" in $style$$6$$ && ($style$$6$$.filter = "" === $alpha$$3$$ ? "" : "alpha(opacity=" + 100 * $alpha$$3$$ + ")")
1584}
1585function $goog$style$showElement$$($el$$18$$, $display$$) {
1586 $el$$18$$.style.display = $display$$ ? "" : "none"
1587}
1588function $goog$style$isRightToLeft$$($el$$22$$) {
1589 return"rtl" == $goog$style$getStyle_$$($el$$22$$, "direction")
1590}
1591var $goog$style$unselectableStyle_$$ = $goog$userAgent$GECKO$$ ? "MozUserSelect" : $goog$userAgent$WEBKIT$$ ? "WebkitUserSelect" : $JSCompiler_alias_NULL$$;
1592function $goog$style$getIePixelValue_$$($element$$59$$, $value$$68$$) {
1593 if(/^\d+px?$/.test($value$$68$$)) {
1594 return parseInt($value$$68$$, 10)
1595 }
1596 var $oldStyleValue$$ = $element$$59$$.style.left, $oldRuntimeValue$$ = $element$$59$$.runtimeStyle.left;
1597 $element$$59$$.runtimeStyle.left = $element$$59$$.currentStyle.left;
1598 $element$$59$$.style.left = $value$$68$$;
1599 var $pixelValue$$ = $element$$59$$.style.pixelLeft;
1600 $element$$59$$.style.left = $oldStyleValue$$;
1601 $element$$59$$.runtimeStyle.left = $oldRuntimeValue$$;
1602 return $pixelValue$$
1603}
1604function $goog$style$getBox_$$($element$$61$$, $stylePrefix$$) {
1605 if($goog$userAgent$IE$$) {
1606 var $left$$8$$ = $goog$style$getIePixelValue_$$($element$$61$$, $goog$style$getCascadedStyle$$($element$$61$$, $stylePrefix$$ + "Left")), $right$$9$$ = $goog$style$getIePixelValue_$$($element$$61$$, $goog$style$getCascadedStyle$$($element$$61$$, $stylePrefix$$ + "Right")), $top$$6$$ = $goog$style$getIePixelValue_$$($element$$61$$, $goog$style$getCascadedStyle$$($element$$61$$, $stylePrefix$$ + "Top")), $bottom$$5$$ = $goog$style$getIePixelValue_$$($element$$61$$, $goog$style$getCascadedStyle$$($element$$61$$,
1607 $stylePrefix$$ + "Bottom"));
1608 return new $goog$math$Box$$($top$$6$$, $right$$9$$, $bottom$$5$$, $left$$8$$)
1609 }
1610 $left$$8$$ = $goog$style$getComputedStyle$$($element$$61$$, $stylePrefix$$ + "Left");
1611 $right$$9$$ = $goog$style$getComputedStyle$$($element$$61$$, $stylePrefix$$ + "Right");
1612 $top$$6$$ = $goog$style$getComputedStyle$$($element$$61$$, $stylePrefix$$ + "Top");
1613 $bottom$$5$$ = $goog$style$getComputedStyle$$($element$$61$$, $stylePrefix$$ + "Bottom");
1614 return new $goog$math$Box$$(parseFloat($top$$6$$), parseFloat($right$$9$$), parseFloat($bottom$$5$$), parseFloat($left$$8$$))
1615}
1616var $goog$style$ieBorderWidthKeywords_$$ = {thin:2, medium:4, thick:6};
1617function $goog$style$getIePixelBorder_$$($element$$64$$, $prop$$5$$) {
1618 if("none" == $goog$style$getCascadedStyle$$($element$$64$$, $prop$$5$$ + "Style")) {
1619 return 0
1620 }
1621 var $width$$15$$ = $goog$style$getCascadedStyle$$($element$$64$$, $prop$$5$$ + "Width");
1622 return $width$$15$$ in $goog$style$ieBorderWidthKeywords_$$ ? $goog$style$ieBorderWidthKeywords_$$[$width$$15$$] : $goog$style$getIePixelValue_$$($element$$64$$, $width$$15$$)
1623}
1624function $goog$style$getBorderBox$$($bottom$$6_element$$65$$) {
1625 if($goog$userAgent$IE$$) {
1626 var $left$$9$$ = $goog$style$getIePixelBorder_$$($bottom$$6_element$$65$$, "borderLeft"), $right$$10$$ = $goog$style$getIePixelBorder_$$($bottom$$6_element$$65$$, "borderRight"), $top$$7$$ = $goog$style$getIePixelBorder_$$($bottom$$6_element$$65$$, "borderTop"), $bottom$$6_element$$65$$ = $goog$style$getIePixelBorder_$$($bottom$$6_element$$65$$, "borderBottom");
1627 return new $goog$math$Box$$($top$$7$$, $right$$10$$, $bottom$$6_element$$65$$, $left$$9$$)
1628 }
1629 $left$$9$$ = $goog$style$getComputedStyle$$($bottom$$6_element$$65$$, "borderLeftWidth");
1630 $right$$10$$ = $goog$style$getComputedStyle$$($bottom$$6_element$$65$$, "borderRightWidth");
1631 $top$$7$$ = $goog$style$getComputedStyle$$($bottom$$6_element$$65$$, "borderTopWidth");
1632 $bottom$$6_element$$65$$ = $goog$style$getComputedStyle$$($bottom$$6_element$$65$$, "borderBottomWidth");
1633 return new $goog$math$Box$$(parseFloat($top$$7$$), parseFloat($right$$10$$), parseFloat($bottom$$6_element$$65$$), parseFloat($left$$9$$))
1634}
1635var $goog$style$MATRIX_TRANSLATION_REGEX_$$ = /matrix\([0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, ([0-9\.\-]+)p?x?, ([0-9\.\-]+)p?x?\)/;
1636function $goog$fx$Dragger$$($target$$43$$, $opt_handle$$, $opt_limits$$) {
1637 $goog$Disposable$$.call(this);
1638 this.target = $target$$43$$;
1639 this.handle = $opt_handle$$ || $target$$43$$;
1640 this.$limits$ = $opt_limits$$ || new $goog$math$Rect$$(NaN, NaN, NaN, NaN);
1641 this.$document_$ = $goog$dom$getOwnerDocument$$($target$$43$$);
1642 this.$eventHandler_$ = new $goog$events$EventHandler$$(this);
1643 $goog$events$listen$$(this.handle, ["touchstart", "mousedown"], this.$startDrag$, $JSCompiler_alias_FALSE$$, this)
1644}
1645$goog$inherits$$($goog$fx$Dragger$$, $goog$events$EventTarget$$);
1646var $goog$fx$Dragger$HAS_SET_CAPTURE_$$ = $goog$userAgent$IE$$ || $goog$userAgent$GECKO$$ && $goog$userAgent$isVersion$$("1.9.3");
1647$JSCompiler_prototypeAlias$$ = $goog$fx$Dragger$$.prototype;
1648$JSCompiler_prototypeAlias$$.clientX = 0;
1649$JSCompiler_prototypeAlias$$.clientY = 0;
1650$JSCompiler_prototypeAlias$$.screenX = 0;
1651$JSCompiler_prototypeAlias$$.screenY = 0;
1652$JSCompiler_prototypeAlias$$.$startX$ = 0;
1653$JSCompiler_prototypeAlias$$.$startY$ = 0;
1654$JSCompiler_prototypeAlias$$.$deltaX$ = 0;
1655$JSCompiler_prototypeAlias$$.$deltaY$ = 0;
1656$JSCompiler_prototypeAlias$$.$enabled_$ = $JSCompiler_alias_TRUE$$;
1657$JSCompiler_prototypeAlias$$.$dragging_$ = $JSCompiler_alias_FALSE$$;
1658$JSCompiler_prototypeAlias$$.$hysteresisDistanceSquared_$ = 0;
1659$JSCompiler_prototypeAlias$$.$mouseDownTime_$ = 0;
1660$JSCompiler_prototypeAlias$$.$ieDragStartCancellingOn_$ = $JSCompiler_alias_FALSE$$;
1661$JSCompiler_prototypeAlias$$.$useRightPositioningForRtl_$ = $JSCompiler_alias_FALSE$$;
1662$JSCompiler_prototypeAlias$$.$getHandler$ = $JSCompiler_get$$("$eventHandler_$");
1663function $JSCompiler_StaticMethods_isRightToLeft_$$($JSCompiler_StaticMethods_isRightToLeft_$self$$) {
1664 $goog$isDef$$($JSCompiler_StaticMethods_isRightToLeft_$self$$.$rightToLeft_$) || ($JSCompiler_StaticMethods_isRightToLeft_$self$$.$rightToLeft_$ = $goog$style$isRightToLeft$$($JSCompiler_StaticMethods_isRightToLeft_$self$$.target));
1665 return $JSCompiler_StaticMethods_isRightToLeft_$self$$.$rightToLeft_$
1666}
1667$JSCompiler_prototypeAlias$$.$startDrag$ = function $$JSCompiler_prototypeAlias$$$$startDrag$$($JSCompiler_temp$$51_e$$25_element$$inline_447$$) {
1668 var $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ = "mousedown" == $JSCompiler_temp$$51_e$$25_element$$inline_447$$.type;
1669 if(this.$enabled_$ && !this.$dragging_$ && (!$doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ || $JSCompiler_StaticMethods_isMouseActionButton$$($JSCompiler_temp$$51_e$$25_element$$inline_447$$))) {
1670 $JSCompiler_StaticMethods_maybeReinitTouchEvent_$$($JSCompiler_temp$$51_e$$25_element$$inline_447$$);
1671 if(0 == this.$hysteresisDistanceSquared_$) {
1672 if(this.dispatchEvent(new $goog$fx$DragEvent$$("start", this, $JSCompiler_temp$$51_e$$25_element$$inline_447$$.clientX, $JSCompiler_temp$$51_e$$25_element$$inline_447$$.clientY, $JSCompiler_temp$$51_e$$25_element$$inline_447$$))) {
1673 this.$dragging_$ = $JSCompiler_alias_TRUE$$, $JSCompiler_temp$$51_e$$25_element$$inline_447$$.preventDefault()
1674 }else {
1675 return
1676 }
1677 }else {
1678 $JSCompiler_temp$$51_e$$25_element$$inline_447$$.preventDefault()
1679 }
1680 var $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ = this.$document_$, $bestParent$$inline_449_docEl$$inline_444$$ = $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$.documentElement, $borderWidths$$inline_450_useCapture$$inline_445$$ = !$goog$fx$Dragger$HAS_SET_CAPTURE_$$;
1681 $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$, ["touchmove", "mousemove"], this.$handleMove_$, $borderWidths$$inline_450_useCapture$$inline_445$$);
1682 $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$, ["touchend", "mouseup"], this.$endDrag$, $borderWidths$$inline_450_useCapture$$inline_445$$);
1683 $goog$fx$Dragger$HAS_SET_CAPTURE_$$ ? ($bestParent$$inline_449_docEl$$inline_444$$.setCapture($JSCompiler_alias_FALSE$$), $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, $bestParent$$inline_449_docEl$$inline_444$$, "losecapture", this.$endDrag$)) : $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ ? $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$.parentWindow || $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$.defaultView :
1684 window, "blur", this.$endDrag$);
1685 $goog$userAgent$IE$$ && this.$ieDragStartCancellingOn_$ && $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$, "dragstart", $goog$events$Event$preventDefault$$);
1686 this.$scrollTarget_$ && $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, this.$scrollTarget_$, "scroll", this.$onScroll_$, $borderWidths$$inline_450_useCapture$$inline_445$$);
1687 this.clientX = this.$startX$ = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.clientX;
1688 this.clientY = this.$startY$ = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.clientY;
1689 this.screenX = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.screenX;
1690 this.screenY = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.screenY;
1691 this.$useRightPositioningForRtl_$ ? ($JSCompiler_temp$$51_e$$25_element$$inline_447$$ = this.target, $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.offsetLeft, $bestParent$$inline_449_docEl$$inline_444$$ = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.offsetParent, !$bestParent$$inline_449_docEl$$inline_444$$ && "fixed" == $goog$style$getStyle_$$($JSCompiler_temp$$51_e$$25_element$$inline_447$$, "position") && ($bestParent$$inline_449_docEl$$inline_444$$ =
1692 $goog$dom$getOwnerDocument$$($JSCompiler_temp$$51_e$$25_element$$inline_447$$).documentElement), $bestParent$$inline_449_docEl$$inline_444$$ ? ($goog$userAgent$GECKO$$ ? ($borderWidths$$inline_450_useCapture$$inline_445$$ = $goog$style$getBorderBox$$($bestParent$$inline_449_docEl$$inline_444$$), $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ += $borderWidths$$inline_450_useCapture$$inline_445$$.left) : $goog$userAgent$isDocumentMode$$(8) && ($borderWidths$$inline_450_useCapture$$inline_445$$ =
1693 $goog$style$getBorderBox$$($bestParent$$inline_449_docEl$$inline_444$$), $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ -= $borderWidths$$inline_450_useCapture$$inline_445$$.left), $JSCompiler_temp$$51_e$$25_element$$inline_447$$ = $goog$style$isRightToLeft$$($bestParent$$inline_449_docEl$$inline_444$$) ? $bestParent$$inline_449_docEl$$inline_444$$.clientWidth - ($doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ + $JSCompiler_temp$$51_e$$25_element$$inline_447$$.offsetWidth) :
1694 $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$) : $JSCompiler_temp$$51_e$$25_element$$inline_447$$ = $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$) : $JSCompiler_temp$$51_e$$25_element$$inline_447$$ = this.target.offsetLeft;
1695 this.$deltaX$ = $JSCompiler_temp$$51_e$$25_element$$inline_447$$;
1696 this.$deltaY$ = this.target.offsetTop;
1697 this.$pageScroll$ = $JSCompiler_StaticMethods_getDocumentScroll$$($goog$dom$getDomHelper$$(this.$document_$));
1698 this.$mouseDownTime_$ = $goog$now$$()
1699 }else {
1700 this.dispatchEvent("earlycancel")
1701 }
1702};
1703$JSCompiler_prototypeAlias$$.$endDrag$ = function $$JSCompiler_prototypeAlias$$$$endDrag$$($e$$27$$, $opt_dragCanceled$$) {
1704 this.$eventHandler_$.$removeAll$();
1705 $goog$fx$Dragger$HAS_SET_CAPTURE_$$ && this.$document_$.releaseCapture();
1706 if(this.$dragging_$) {
1707 $JSCompiler_StaticMethods_maybeReinitTouchEvent_$$($e$$27$$);
1708 this.$dragging_$ = $JSCompiler_alias_FALSE$$;
1709 var $x$$72$$ = $JSCompiler_StaticMethods_limitX$$(this, this.$deltaX$), $y$$40$$ = $JSCompiler_StaticMethods_limitY$$(this, this.$deltaY$);
1710 this.dispatchEvent(new $goog$fx$DragEvent$$("end", this, $e$$27$$.clientX, $e$$27$$.clientY, $e$$27$$, $x$$72$$, $y$$40$$, $opt_dragCanceled$$ || "touchcancel" == $e$$27$$.type))
1711 }else {
1712 this.dispatchEvent("earlycancel")
1713 }
1714 ("touchend" == $e$$27$$.type || "touchcancel" == $e$$27$$.type) && $e$$27$$.preventDefault()
1715};
1716function $JSCompiler_StaticMethods_maybeReinitTouchEvent_$$($e$$29$$) {
1717 var $type$$77$$ = $e$$29$$.type;
1718 "touchstart" == $type$$77$$ || "touchmove" == $type$$77$$ ? $e$$29$$.init($e$$29$$.$event_$.targetTouches[0], $e$$29$$.currentTarget) : ("touchend" == $type$$77$$ || "touchcancel" == $type$$77$$) && $e$$29$$.init($e$$29$$.$event_$.changedTouches[0], $e$$29$$.currentTarget)
1719}
1720$JSCompiler_prototypeAlias$$.$handleMove_$ = function $$JSCompiler_prototypeAlias$$$$handleMove_$$($e$$30$$) {
1721 if(this.$enabled_$) {
1722 $JSCompiler_StaticMethods_maybeReinitTouchEvent_$$($e$$30$$);
1723 var $dx$$7_x$$73$$ = (this.$useRightPositioningForRtl_$ && $JSCompiler_StaticMethods_isRightToLeft_$$(this) ? -1 : 1) * ($e$$30$$.clientX - this.clientX), $dy$$7_pos$$5_y$$41$$ = $e$$30$$.clientY - this.clientY;
1724 this.clientX = $e$$30$$.clientX;
1725 this.clientY = $e$$30$$.clientY;
1726 this.screenX = $e$$30$$.screenX;
1727 this.screenY = $e$$30$$.screenY;
1728 if(!this.$dragging_$) {
1729 var $diffX$$ = this.$startX$ - this.clientX, $diffY$$ = this.$startY$ - this.clientY;
1730 if($diffX$$ * $diffX$$ + $diffY$$ * $diffY$$ > this.$hysteresisDistanceSquared_$) {
1731 if(this.dispatchEvent(new $goog$fx$DragEvent$$("start", this, $e$$30$$.clientX, $e$$30$$.clientY, $e$$30$$))) {
1732 this.$dragging_$ = $JSCompiler_alias_TRUE$$
1733 }else {
1734 this.$disposed_$ || this.$endDrag$($e$$30$$);
1735 return
1736 }
1737 }
1738 }
1739 $dy$$7_pos$$5_y$$41$$ = $JSCompiler_StaticMethods_calculatePosition_$$(this, $dx$$7_x$$73$$, $dy$$7_pos$$5_y$$41$$);
1740 $dx$$7_x$$73$$ = $dy$$7_pos$$5_y$$41$$.x;
1741 $dy$$7_pos$$5_y$$41$$ = $dy$$7_pos$$5_y$$41$$.y;
1742 this.$dragging_$ && this.dispatchEvent(new $goog$fx$DragEvent$$("beforedrag", this, $e$$30$$.clientX, $e$$30$$.clientY, $e$$30$$, $dx$$7_x$$73$$, $dy$$7_pos$$5_y$$41$$)) && ($JSCompiler_StaticMethods_doDrag$$(this, $e$$30$$, $dx$$7_x$$73$$, $dy$$7_pos$$5_y$$41$$), $e$$30$$.preventDefault())
1743 }
1744};
1745function $JSCompiler_StaticMethods_calculatePosition_$$($JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$, $dx$$8_x$$74$$, $dy$$8$$) {
1746 var $pageScroll$$ = $JSCompiler_StaticMethods_getDocumentScroll$$($goog$dom$getDomHelper$$($JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$document_$)), $dx$$8_x$$74$$ = $dx$$8_x$$74$$ + ($pageScroll$$.x - $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$pageScroll$.x), $dy$$8$$ = $dy$$8$$ + ($pageScroll$$.y - $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$pageScroll$.y);
1747 $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$pageScroll$ = $pageScroll$$;
1748 $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$deltaX$ += $dx$$8_x$$74$$;
1749 $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$deltaY$ += $dy$$8$$;
1750 $dx$$8_x$$74$$ = $JSCompiler_StaticMethods_limitX$$($JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$, $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$deltaX$);
1751 $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$ = $JSCompiler_StaticMethods_limitY$$($JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$, $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$deltaY$);
1752 return new $goog$math$Coordinate$$($dx$$8_x$$74$$, $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$)
1753}
1754$JSCompiler_prototypeAlias$$.$onScroll_$ = function $$JSCompiler_prototypeAlias$$$$onScroll_$$($e$$31$$) {
1755 var $pos$$6$$ = $JSCompiler_StaticMethods_calculatePosition_$$(this, 0, 0);
1756 $e$$31$$.clientX = this.clientX;
1757 $e$$31$$.clientY = this.clientY;
1758 $JSCompiler_StaticMethods_doDrag$$(this, $e$$31$$, $pos$$6$$.x, $pos$$6$$.y)
1759};
1760function $JSCompiler_StaticMethods_doDrag$$($JSCompiler_StaticMethods_doDrag$self$$, $e$$32$$, $x$$75$$, $y$$43$$) {
1761 $JSCompiler_StaticMethods_doDrag$self$$.$defaultAction$($x$$75$$, $y$$43$$);
1762 $JSCompiler_StaticMethods_doDrag$self$$.dispatchEvent(new $goog$fx$DragEvent$$("drag", $JSCompiler_StaticMethods_doDrag$self$$, $e$$32$$.clientX, $e$$32$$.clientY, $e$$32$$, $x$$75$$, $y$$43$$))
1763}
1764function $JSCompiler_StaticMethods_limitX$$($JSCompiler_StaticMethods_limitX$self$$, $x$$76$$) {
1765 var $rect$$6_width$$17$$ = $JSCompiler_StaticMethods_limitX$self$$.$limits$, $left$$11$$ = !isNaN($rect$$6_width$$17$$.left) ? $rect$$6_width$$17$$.left : $JSCompiler_alias_NULL$$, $rect$$6_width$$17$$ = !isNaN($rect$$6_width$$17$$.width) ? $rect$$6_width$$17$$.width : 0;
1766 return Math.min($left$$11$$ != $JSCompiler_alias_NULL$$ ? $left$$11$$ + $rect$$6_width$$17$$ : Infinity, Math.max($left$$11$$ != $JSCompiler_alias_NULL$$ ? $left$$11$$ : -Infinity, $x$$76$$))
1767}
1768function $JSCompiler_StaticMethods_limitY$$($JSCompiler_StaticMethods_limitY$self$$, $y$$44$$) {
1769 var $height$$16_rect$$7$$ = $JSCompiler_StaticMethods_limitY$self$$.$limits$, $top$$9$$ = !isNaN($height$$16_rect$$7$$.top) ? $height$$16_rect$$7$$.top : $JSCompiler_alias_NULL$$, $height$$16_rect$$7$$ = !isNaN($height$$16_rect$$7$$.height) ? $height$$16_rect$$7$$.height : 0;
1770 return Math.min($top$$9$$ != $JSCompiler_alias_NULL$$ ? $top$$9$$ + $height$$16_rect$$7$$ : Infinity, Math.max($top$$9$$ != $JSCompiler_alias_NULL$$ ? $top$$9$$ : -Infinity, $y$$44$$))
1771}
1772$JSCompiler_prototypeAlias$$.$defaultAction$ = function $$JSCompiler_prototypeAlias$$$$defaultAction$$($x$$77$$, $y$$45$$) {
1773 this.$useRightPositioningForRtl_$ && $JSCompiler_StaticMethods_isRightToLeft_$$(this) ? this.target.style.right = $x$$77$$ + "px" : this.target.style.left = $x$$77$$ + "px";
1774 this.target.style.top = $y$$45$$ + "px"
1775};
1776function $goog$fx$DragEvent$$($type$$78$$, $dragobj$$, $clientX$$2$$, $clientY$$2$$, $browserEvent$$, $opt_actX$$, $opt_actY$$, $opt_dragCanceled$$1$$) {
1777 $goog$events$Event$$.call(this, $type$$78$$);
1778 this.clientX = $clientX$$2$$;
1779 this.clientY = $clientY$$2$$;
1780 this.$browserEvent$ = $browserEvent$$;
1781 this.left = $goog$isDef$$($opt_actX$$) ? $opt_actX$$ : $dragobj$$.$deltaX$;
1782 this.top = $goog$isDef$$($opt_actY$$) ? $opt_actY$$ : $dragobj$$.$deltaY$;
1783 this.$dragger$ = $dragobj$$;
1784 this.$dragCanceled$ = !!$opt_dragCanceled$$1$$
1785}
1786$goog$inherits$$($goog$fx$DragEvent$$, $goog$events$Event$$);
1787function $annotorious$dom$getOffset$$($el$$29$$) {
1788 for(var $_x$$ = 0, $_y$$ = 0;$el$$29$$ && !isNaN($el$$29$$.offsetLeft) && !isNaN($el$$29$$.offsetTop);) {
1789 $_x$$ += $el$$29$$.offsetLeft - $el$$29$$.scrollLeft, $_y$$ += $el$$29$$.offsetTop - $el$$29$$.scrollTop, $el$$29$$ = $el$$29$$.offsetParent
1790 }
1791 return{top:$_y$$, left:$_x$$}
1792}
1793;function $annotorious$events$EventBroker$$() {
1794 this.$_handlers$ = []
1795}
1796$annotorious$events$EventBroker$$.prototype.$addHandler$ = function $$annotorious$events$EventBroker$$$$$addHandler$$($type$$79$$, $handler$$5$$) {
1797 this.$_handlers$[$type$$79$$] || (this.$_handlers$[$type$$79$$] = []);
1798 this.$_handlers$[$type$$79$$].push($handler$$5$$)
1799};
1800$annotorious$events$EventBroker$$.prototype.$removeHandler$ = function $$annotorious$events$EventBroker$$$$$removeHandler$$($type$$80$$, $handler$$6$$) {
1801 var $handlers$$ = this.$_handlers$[$type$$80$$];
1802 $handlers$$ && $goog$array$remove$$($handlers$$, $handler$$6$$)
1803};
1804$annotorious$events$EventBroker$$.prototype.fireEvent = function $$annotorious$events$EventBroker$$$$fireEvent$($type$$81$$, $opt_event$$) {
1805 var $cancelEvent$$ = $JSCompiler_alias_FALSE$$, $handlers$$1$$ = this.$_handlers$[$type$$81$$];
1806 $handlers$$1$$ && $goog$array$forEach$$($handlers$$1$$, function($handler$$7_retVal$$1$$) {
1807 $handler$$7_retVal$$1$$ = $handler$$7_retVal$$1$$($opt_event$$);
1808 $goog$isDef$$($handler$$7_retVal$$1$$) && !$handler$$7_retVal$$1$$ && ($cancelEvent$$ = $JSCompiler_alias_TRUE$$)
1809 });
1810 return $cancelEvent$$
1811};
1812function $goog$structs$Map$$($opt_map$$, $var_args$$68$$) {
1813 this.$map_$ = {};
1814 this.$keys_$ = [];
1815 var $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ = arguments.length;
1816 if(1 < $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$) {
1817 $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ % 2 && $JSCompiler_alias_THROW$$(Error("Uneven number of arguments"));
1818 for(var $i$$91_key$$inline_857_values$$inline_460$$ = 0;$i$$91_key$$inline_857_values$$inline_460$$ < $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$;$i$$91_key$$inline_857_values$$inline_460$$ += 2) {
1819 this.set(arguments[$i$$91_key$$inline_857_values$$inline_460$$], arguments[$i$$91_key$$inline_857_values$$inline_460$$ + 1])
1820 }
1821 }else {
1822 if($opt_map$$) {
1823 var $key$$inline_852_keys$$inline_459$$;
1824 if($opt_map$$ instanceof $goog$structs$Map$$) {
1825 $JSCompiler_StaticMethods_cleanupKeysArray_$$($opt_map$$), $key$$inline_852_keys$$inline_459$$ = $opt_map$$.$keys_$.concat(), $i$$91_key$$inline_857_values$$inline_460$$ = $JSCompiler_StaticMethods_getValues$$($opt_map$$)
1826 }else {
1827 var $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ = [], $i$$inline_851_i$$inline_856$$ = 0;
1828 for($key$$inline_852_keys$$inline_459$$ in $opt_map$$) {
1829 $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$[$i$$inline_851_i$$inline_856$$++] = $key$$inline_852_keys$$inline_459$$
1830 }
1831 $key$$inline_852_keys$$inline_459$$ = $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$;
1832 $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ = [];
1833 $i$$inline_851_i$$inline_856$$ = 0;
1834 for($i$$91_key$$inline_857_values$$inline_460$$ in $opt_map$$) {
1835 $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$[$i$$inline_851_i$$inline_856$$++] = $opt_map$$[$i$$91_key$$inline_857_values$$inline_460$$]
1836 }
1837 $i$$91_key$$inline_857_values$$inline_460$$ = $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$
1838 }
1839 for($argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ = 0;$argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ < $key$$inline_852_keys$$inline_459$$.length;$argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$++) {
1840 this.set($key$$inline_852_keys$$inline_459$$[$argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$], $i$$91_key$$inline_857_values$$inline_460$$[$argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$])
1841 }
1842 }
1843 }
1844}
1845$JSCompiler_prototypeAlias$$ = $goog$structs$Map$$.prototype;
1846$JSCompiler_prototypeAlias$$.$count_$ = 0;
1847$JSCompiler_prototypeAlias$$.$version_$ = 0;
1848function $JSCompiler_StaticMethods_getValues$$($JSCompiler_StaticMethods_getValues$self$$) {
1849 $JSCompiler_StaticMethods_cleanupKeysArray_$$($JSCompiler_StaticMethods_getValues$self$$);
1850 for(var $rv$$18$$ = [], $i$$92$$ = 0;$i$$92$$ < $JSCompiler_StaticMethods_getValues$self$$.$keys_$.length;$i$$92$$++) {
1851 $rv$$18$$.push($JSCompiler_StaticMethods_getValues$self$$.$map_$[$JSCompiler_StaticMethods_getValues$self$$.$keys_$[$i$$92$$]])
1852 }
1853 return $rv$$18$$
1854}
1855$JSCompiler_prototypeAlias$$.clear = function $$JSCompiler_prototypeAlias$$$clear$() {
1856 this.$map_$ = {};
1857 this.$version_$ = this.$count_$ = this.$keys_$.length = 0
1858};
1859$JSCompiler_prototypeAlias$$.remove = function $$JSCompiler_prototypeAlias$$$remove$($key$$56$$) {
1860 return $goog$structs$Map$hasKey_$$(this.$map_$, $key$$56$$) ? (delete this.$map_$[$key$$56$$], this.$count_$--, this.$version_$++, this.$keys_$.length > 2 * this.$count_$ && $JSCompiler_StaticMethods_cleanupKeysArray_$$(this), $JSCompiler_alias_TRUE$$) : $JSCompiler_alias_FALSE$$
1861};
1862function $JSCompiler_StaticMethods_cleanupKeysArray_$$($JSCompiler_StaticMethods_cleanupKeysArray_$self$$) {
1863 if($JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$count_$ != $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length) {
1864 for(var $srcIndex$$ = 0, $destIndex$$ = 0;$srcIndex$$ < $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length;) {
1865 var $key$$57$$ = $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$[$srcIndex$$];
1866 $goog$structs$Map$hasKey_$$($JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$map_$, $key$$57$$) && ($JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$[$destIndex$$++] = $key$$57$$);
1867 $srcIndex$$++
1868 }
1869 $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length = $destIndex$$
1870 }
1871 if($JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$count_$ != $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length) {
1872 for(var $seen$$2$$ = {}, $destIndex$$ = $srcIndex$$ = 0;$srcIndex$$ < $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length;) {
1873 $key$$57$$ = $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$[$srcIndex$$], $goog$structs$Map$hasKey_$$($seen$$2$$, $key$$57$$) || ($JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$[$destIndex$$++] = $key$$57$$, $seen$$2$$[$key$$57$$] = 1), $srcIndex$$++
1874 }
1875 $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length = $destIndex$$
1876 }
1877}
1878$JSCompiler_prototypeAlias$$.get = function $$JSCompiler_prototypeAlias$$$get$($key$$58$$, $opt_val$$1$$) {
1879 return $goog$structs$Map$hasKey_$$(this.$map_$, $key$$58$$) ? this.$map_$[$key$$58$$] : $opt_val$$1$$
1880};
1881$JSCompiler_prototypeAlias$$.set = function $$JSCompiler_prototypeAlias$$$set$($key$$59$$, $value$$73$$) {
1882 $goog$structs$Map$hasKey_$$(this.$map_$, $key$$59$$) || (this.$count_$++, this.$keys_$.push($key$$59$$), this.$version_$++);
1883 this.$map_$[$key$$59$$] = $value$$73$$
1884};
1885function $goog$structs$Map$hasKey_$$($obj$$72$$, $key$$63$$) {
1886 return Object.prototype.hasOwnProperty.call($obj$$72$$, $key$$63$$)
1887}
1888;function $annotorious$shape$geom$Point$$($x$$79$$, $y$$46$$) {
1889 this.x = $x$$79$$;
1890 this.y = $y$$46$$
1891}
1892;function $annotorious$shape$geom$Polygon$$($points$$) {
1893 this.points = $points$$
1894}
1895function $annotorious$shape$geom$Polygon$computeArea$$($points$$1$$) {
1896 for(var $area$$ = 0, $j$$8$$ = $points$$1$$.length - 1, $i$$99$$ = 0;$i$$99$$ < $points$$1$$.length;$i$$99$$++) {
1897 $area$$ += ($points$$1$$[$j$$8$$].x + $points$$1$$[$i$$99$$].x) * ($points$$1$$[$j$$8$$].y - $points$$1$$[$i$$99$$].y), $j$$8$$ = $i$$99$$
1898 }
1899 return $area$$ / 2
1900}
1901function $annotorious$shape$geom$Polygon$_expandTriangle$$($points$$4$$, $delta$$1$$) {
1902 for(var $centroid_x$$inline_464$$, $expanded_y$$inline_465$$ = $centroid_x$$inline_464$$ = 0, $f$$inline_466_i$$101$$, $j$$inline_467_px$$inline_470$$ = $points$$4$$.length - 1, $JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ = 0;$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ < $points$$4$$.length;$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$++) {
1903 $f$$inline_466_i$$101$$ = $points$$4$$[$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$].x * $points$$4$$[$j$$inline_467_px$$inline_470$$].y - $points$$4$$[$j$$inline_467_px$$inline_470$$].x * $points$$4$$[$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$].y, $centroid_x$$inline_464$$ += ($points$$4$$[$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$].x + $points$$4$$[$j$$inline_467_px$$inline_470$$].x) * $f$$inline_466_i$$101$$, $expanded_y$$inline_465$$ += ($points$$4$$[$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$].y +
1904 $points$$4$$[$j$$inline_467_px$$inline_470$$].y) * $f$$inline_466_i$$101$$, $j$$inline_467_px$$inline_470$$ = $JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$
1905 }
1906 $f$$inline_466_i$$101$$ = 6 * $annotorious$shape$geom$Polygon$computeArea$$($points$$4$$);
1907 $centroid_x$$inline_464$$ = new $annotorious$shape$geom$Point$$(Math.abs($centroid_x$$inline_464$$ / $f$$inline_466_i$$101$$), Math.abs($expanded_y$$inline_465$$ / $f$$inline_466_i$$101$$));
1908 $expanded_y$$inline_465$$ = [];
1909 for($f$$inline_466_i$$101$$ = 0;$f$$inline_466_i$$101$$ < $points$$4$$.length;$f$$inline_466_i$$101$$++) {
1910 var $j$$inline_467_px$$inline_470$$ = $points$$4$$[$f$$inline_466_i$$101$$], $delta$$inline_472_dy$$inline_476$$ = (0 > $annotorious$shape$geom$Polygon$computeArea$$($points$$4$$) ? -1 : 1) * $delta$$1$$, $JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ = $j$$inline_467_px$$inline_470$$.x - $centroid_x$$inline_464$$.x, $JSCompiler_object_inline_y_1$$inline_474$$ = $j$$inline_467_px$$inline_470$$.y - $centroid_x$$inline_464$$.y, $sign_delta$$inline_475$$ = 0 < $delta$$inline_472_dy$$inline_476$$ ?
1911 1 : 0 > $delta$$inline_472_dy$$inline_476$$ ? -1 : 0, $delta$$inline_472_dy$$inline_476$$ = Math.sqrt(Math.pow($delta$$inline_472_dy$$inline_476$$, 2) / (1 + Math.pow($JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ / $JSCompiler_object_inline_y_1$$inline_474$$, 2)));
1912 $expanded_y$$inline_465$$.push({x:$j$$inline_467_px$$inline_470$$.x + Math.abs($JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ / $JSCompiler_object_inline_y_1$$inline_474$$ * $delta$$inline_472_dy$$inline_476$$) * (0 < $JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ ? 1 : 0 > $JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ ? -1 : 0) * $sign_delta$$inline_475$$, y:$j$$inline_467_px$$inline_470$$.y + Math.abs($delta$$inline_472_dy$$inline_476$$) * (0 < $JSCompiler_object_inline_y_1$$inline_474$$ ?
1913 1 : 0 > $JSCompiler_object_inline_y_1$$inline_474$$ ? -1 : 0) * $sign_delta$$inline_475$$})
1914 }
1915 return $expanded_y$$inline_465$$
1916}
1917;function $annotorious$shape$geom$Rectangle$$($x$$81$$, $y$$48$$, $width$$19$$, $height$$18$$) {
1918 0 < $width$$19$$ ? (this.x = $x$$81$$, this.width = $width$$19$$) : (this.x = $x$$81$$ + $width$$19$$, this.width = -$width$$19$$);
1919 0 < $height$$18$$ ? (this.y = $y$$48$$, this.height = $height$$18$$) : (this.y = $y$$48$$ + $height$$18$$, this.height = -$height$$18$$)
1920}
1921;function $annotorious$shape$Shape$$($type$$82$$, $geometry$$) {
1922 this.type = $type$$82$$;
1923 this.geometry = $geometry$$
1924}
1925function $annotorious$shape$getSize$$($shape$$1$$) {
1926 return"rect" == $shape$$1$$.type ? $shape$$1$$.geometry.width * $shape$$1$$.geometry.height : "polygon" == $shape$$1$$.type ? Math.abs($annotorious$shape$geom$Polygon$computeArea$$($shape$$1$$.geometry.points)) : 0
1927}
1928function $annotorious$shape$getBoundingRect$$($points$$7_shape$$2$$) {
1929 if("rect" == $points$$7_shape$$2$$.type) {
1930 return $points$$7_shape$$2$$
1931 }
1932 if("polygon" == $points$$7_shape$$2$$.type) {
1933 for(var $points$$7_shape$$2$$ = $points$$7_shape$$2$$.geometry.points, $left$$13$$ = $points$$7_shape$$2$$[0].x, $right$$11$$ = $points$$7_shape$$2$$[0].x, $top$$11$$ = $points$$7_shape$$2$$[0].y, $bottom$$7$$ = $points$$7_shape$$2$$[0].y, $i$$103$$ = 1;$i$$103$$ < $points$$7_shape$$2$$.length;$i$$103$$++) {
1934 $points$$7_shape$$2$$[$i$$103$$].x > $right$$11$$ && ($right$$11$$ = $points$$7_shape$$2$$[$i$$103$$].x), $points$$7_shape$$2$$[$i$$103$$].x < $left$$13$$ && ($left$$13$$ = $points$$7_shape$$2$$[$i$$103$$].x), $points$$7_shape$$2$$[$i$$103$$].y > $bottom$$7$$ && ($bottom$$7$$ = $points$$7_shape$$2$$[$i$$103$$].y), $points$$7_shape$$2$$[$i$$103$$].y < $top$$11$$ && ($top$$11$$ = $points$$7_shape$$2$$[$i$$103$$].y)
1935 }
1936 return new $annotorious$shape$Shape$$("rect", new $annotorious$shape$geom$Rectangle$$($left$$13$$, $top$$11$$, $right$$11$$ - $left$$13$$, $bottom$$7$$ - $top$$11$$))
1937 }
1938}
1939function $annotorious$shape$expand$$($shape$$4$$, $delta$$4$$) {
1940 var $JSCompiler_inline_result$$36_points$$inline_478$$;
1941 $JSCompiler_inline_result$$36_points$$inline_478$$ = $shape$$4$$.geometry.points;
1942 var $sign$$inline_480$$ = 0 > $annotorious$shape$geom$Polygon$computeArea$$($JSCompiler_inline_result$$36_points$$inline_478$$) ? -1 : 1;
1943 if(4 > $JSCompiler_inline_result$$36_points$$inline_478$$.length) {
1944 $JSCompiler_inline_result$$36_points$$inline_478$$ = $annotorious$shape$geom$Polygon$_expandTriangle$$($JSCompiler_inline_result$$36_points$$inline_478$$, $sign$$inline_480$$ * $delta$$4$$)
1945 }else {
1946 for(var $expTriangle$$inline_485_prev$$inline_481$$ = $JSCompiler_inline_result$$36_points$$inline_478$$.length - 1, $next$$inline_482$$ = 1, $expanded$$inline_483$$ = [], $current$$inline_484$$ = 0;$current$$inline_484$$ < $JSCompiler_inline_result$$36_points$$inline_478$$.length;$current$$inline_484$$++) {
1947 $expTriangle$$inline_485_prev$$inline_481$$ = $annotorious$shape$geom$Polygon$_expandTriangle$$([$JSCompiler_inline_result$$36_points$$inline_478$$[$expTriangle$$inline_485_prev$$inline_481$$], $JSCompiler_inline_result$$36_points$$inline_478$$[$current$$inline_484$$], $JSCompiler_inline_result$$36_points$$inline_478$$[$next$$inline_482$$]], $sign$$inline_480$$ * $delta$$4$$), $expanded$$inline_483$$.push($expTriangle$$inline_485_prev$$inline_481$$[1]), $expTriangle$$inline_485_prev$$inline_481$$ =
1948 $current$$inline_484$$, $next$$inline_482$$++, $next$$inline_482$$ > $JSCompiler_inline_result$$36_points$$inline_478$$.length - 1 && ($next$$inline_482$$ = 0)
1949 }
1950 $JSCompiler_inline_result$$36_points$$inline_478$$ = $expanded$$inline_483$$
1951 }
1952 return new $annotorious$shape$Shape$$("polygon", new $annotorious$shape$geom$Polygon$$($JSCompiler_inline_result$$36_points$$inline_478$$))
1953}
1954function $annotorious$shape$transform$$($shape$$5$$, $transformationFn$$) {
1955 if("rect" == $shape$$5$$.type) {
1956 var $geom_opposite$$ = $shape$$5$$.geometry, $anchor$$ = $transformationFn$$({x:$geom_opposite$$.x, y:$geom_opposite$$.y}), $geom_opposite$$ = $transformationFn$$({x:$geom_opposite$$.x + $geom_opposite$$.width, y:$geom_opposite$$.y + $geom_opposite$$.height});
1957 return new $annotorious$shape$Shape$$("rect", new $annotorious$shape$geom$Rectangle$$($anchor$$.x, $anchor$$.y, $geom_opposite$$.x - $anchor$$.x, $geom_opposite$$.y - $anchor$$.y))
1958 }
1959 if("polygon" == $shape$$5$$.type) {
1960 var $transformedPoints$$ = [];
1961 $goog$array$forEach$$($shape$$5$$.geometry.points, function($pt$$) {
1962 $transformedPoints$$.push($transformationFn$$($pt$$))
1963 });
1964 return new $annotorious$shape$Shape$$("polygon", new $annotorious$shape$geom$Polygon$$($transformedPoints$$))
1965 }
1966}
1967function $annotorious$shape$hashCode$$($shape$$6$$) {
1968 return JSON.stringify($shape$$6$$.geometry)
1969}
1970window.annotorious || (window.annotorious = {});
1971window.annotorious.geometry || (window.annotorious.geometry = {}, window.annotorious.geometry.expand = $annotorious$shape$expand$$);
1972function $annotorious$Annotation$$($src$$21$$, $text$$10$$, $shape$$7$$) {
1973 this.src = $src$$21$$;
1974 this.text = $text$$10$$;
1975 this.shapes = [$shape$$7$$];
1976 this.context = document.URL
1977}
1978;function $annotorious$mediatypes$Module$$() {
1979}
1980function $JSCompiler_StaticMethods__initFields$$($JSCompiler_StaticMethods__initFields$self$$, $opt_preload_fn$$) {
1981 $JSCompiler_StaticMethods__initFields$self$$.$_annotators$ = new $goog$structs$Map$$;
1982 $JSCompiler_StaticMethods__initFields$self$$.$_eventHandlers$ = [];
1983 $JSCompiler_StaticMethods__initFields$self$$.$_plugins$ = [];
1984 $JSCompiler_StaticMethods__initFields$self$$.$_itemsToLoad$ = [];
1985 $JSCompiler_StaticMethods__initFields$self$$.$_bufferedForAdding$ = [];
1986 $JSCompiler_StaticMethods__initFields$self$$.$_bufferedForRemoval$ = [];
1987 $JSCompiler_StaticMethods__initFields$self$$.$_cachedGlobalSettings$ = {$hide_selection_widget$:$JSCompiler_alias_FALSE$$, $hide_annotations$:$JSCompiler_alias_FALSE$$};
1988 $JSCompiler_StaticMethods__initFields$self$$.$_cachedItemSettings$ = new $goog$structs$Map$$;
1989 $JSCompiler_StaticMethods__initFields$self$$.$_cachedProperties$ = $JSCompiler_alias_VOID$$;
1990 $JSCompiler_StaticMethods__initFields$self$$.$_preLoad$ = $opt_preload_fn$$
1991}
1992function $JSCompiler_StaticMethods__getSettings$$($JSCompiler_StaticMethods__getSettings$self$$, $item_url$$) {
1993 var $settings$$ = $JSCompiler_StaticMethods__getSettings$self$$.$_cachedItemSettings$.get($item_url$$);
1994 $settings$$ || ($settings$$ = {$hide_selection_widget$:$JSCompiler_alias_FALSE$$, $hide_annotations$:$JSCompiler_alias_FALSE$$}, $JSCompiler_StaticMethods__getSettings$self$$.$_cachedItemSettings$.set($item_url$$, $settings$$));
1995 return $settings$$
1996}
1997function $JSCompiler_StaticMethods__initAnnotator$$($JSCompiler_StaticMethods__initAnnotator$self$$, $item$$1$$) {
1998 var $item_src$$ = $JSCompiler_StaticMethods__initAnnotator$self$$.$getItemURL$($item$$1$$);
1999 if(!$JSCompiler_StaticMethods__initAnnotator$self$$.$_annotators$.get($item_src$$)) {
2000 var $annotator$$1$$ = $JSCompiler_StaticMethods__initAnnotator$self$$.$newAnnotator$($item$$1$$), $addedAnnotations$$ = [], $removedAnnotations$$ = [];
2001 $goog$array$forEach$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_eventHandlers$, function($eventHandler$$) {
2002 $annotator$$1$$.$addHandler$($eventHandler$$.type, $eventHandler$$.$handler$)
2003 });
2004 $goog$array$forEach$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_plugins$, function($plugin$$) {
2005 if($plugin$$.onInitAnnotator) {
2006 $plugin$$.onInitAnnotator($annotator$$1$$)
2007 }
2008 });
2009 $goog$array$forEach$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_bufferedForAdding$, function($annotation$$) {
2010 $annotation$$.src == $item_src$$ && ($annotator$$1$$.$addAnnotation$($annotation$$), $addedAnnotations$$.push($annotation$$))
2011 });
2012 $goog$array$forEach$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_bufferedForRemoval$, function($annotation$$1$$) {
2013 $annotation$$1$$.src == $item_src$$ && ($annotator$$1$$.$removeAnnotation$($annotation$$1$$), $removedAnnotations$$.push($annotation$$1$$))
2014 });
2015 $goog$array$forEach$$($addedAnnotations$$, function($annotation$$2$$) {
2016 $goog$array$remove$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_bufferedForAdding$, $annotation$$2$$)
2017 });
2018 $goog$array$forEach$$($removedAnnotations$$, function($annotation$$3$$) {
2019 $goog$array$remove$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_bufferedForRemoval$, $annotation$$3$$)
2020 });
2021 var $settings$$1$$ = $JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedItemSettings$.get($item_src$$);
2022 $settings$$1$$ ? ($settings$$1$$.$hide_selection_widget$ && $annotator$$1$$.$hideSelectionWidget$(), $settings$$1$$.$hide_annotations$ && $annotator$$1$$.$hideAnnotations$(), $JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedItemSettings$.remove($item_src$$)) : ($JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedGlobalSettings$.$hide_selection_widget$ && $annotator$$1$$.$hideSelectionWidget$(), $JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedGlobalSettings$.$hide_annotations$ &&
2023 $annotator$$1$$.$hideAnnotations$());
2024 $JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedProperties$ && $annotator$$1$$.$setProperties$($JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedProperties$);
2025 $JSCompiler_StaticMethods__initAnnotator$self$$.$_annotators$.set($item_src$$, $annotator$$1$$);
2026 $goog$array$remove$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_itemsToLoad$, $item$$1$$)
2027 }
2028}
2029function $JSCompiler_StaticMethods__lazyLoad$$($JSCompiler_StaticMethods__lazyLoad$self$$) {
2030 var $item$$2$$, $i$$104$$;
2031 for($i$$104$$ = $JSCompiler_StaticMethods__lazyLoad$self$$.$_itemsToLoad$.length;0 < $i$$104$$;$i$$104$$--) {
2032 for(var $el$$inline_490$$ = $item$$2$$ = $JSCompiler_StaticMethods__lazyLoad$self$$.$_itemsToLoad$[$i$$104$$ - 1], $top$$inline_491$$ = $el$$inline_490$$.offsetTop, $left$$inline_492$$ = $el$$inline_490$$.offsetLeft, $width$$inline_493$$ = $el$$inline_490$$.offsetWidth, $height$$inline_494$$ = $el$$inline_490$$.offsetHeight;$el$$inline_490$$.offsetParent;) {
2033 $el$$inline_490$$ = $el$$inline_490$$.offsetParent, $top$$inline_491$$ += $el$$inline_490$$.offsetTop, $left$$inline_492$$ += $el$$inline_490$$.offsetLeft
2034 }
2035 $top$$inline_491$$ < window.pageYOffset + window.innerHeight && ($left$$inline_492$$ < window.pageXOffset + window.innerWidth && $top$$inline_491$$ + $height$$inline_494$$ > window.pageYOffset && $left$$inline_492$$ + $width$$inline_493$$ > window.pageXOffset) && $JSCompiler_StaticMethods__initAnnotator$$($JSCompiler_StaticMethods__lazyLoad$self$$, $item$$2$$)
2036 }
2037}
2038function $JSCompiler_StaticMethods__setAnnotationVisibility$$($JSCompiler_StaticMethods__setAnnotationVisibility$self$$, $opt_item_url$$, $visibility$$) {
2039 if($opt_item_url$$) {
2040 var $annotator$$3$$ = $JSCompiler_StaticMethods__setAnnotationVisibility$self$$.$_annotators$.get($opt_item_url$$);
2041 $annotator$$3$$ ? $visibility$$ ? $annotator$$3$$.$showAnnotations$() : $annotator$$3$$.$hideAnnotations$() : $JSCompiler_StaticMethods__getSettings$$($JSCompiler_StaticMethods__setAnnotationVisibility$self$$, $opt_item_url$$).$hide_annotations$ = $visibility$$
2042 }else {
2043 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$($JSCompiler_StaticMethods__setAnnotationVisibility$self$$.$_annotators$), function($annotator$$4$$) {
2044 $visibility$$ ? $annotator$$4$$.$showAnnotations$() : $annotator$$4$$.$hideAnnotations$()
2045 }), $JSCompiler_StaticMethods__setAnnotationVisibility$self$$.$_cachedGlobalSettings$.$hide_annotations$ = !$visibility$$, $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$($JSCompiler_StaticMethods__setAnnotationVisibility$self$$.$_cachedItemSettings$), function($settings$$2$$) {
2046 $settings$$2$$.$hide_annotations$ = !$visibility$$
2047 })
2048 }
2049}
2050function $JSCompiler_StaticMethods__setSelectionWidgetVisibility$$($JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$, $opt_item_url$$1$$, $visibility$$1$$) {
2051 if($opt_item_url$$1$$) {
2052 var $annotator$$5$$ = $JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$.$_annotators$.get($opt_item_url$$1$$);
2053 $annotator$$5$$ ? $visibility$$1$$ ? $annotator$$5$$.$showSelectionWidget$() : $annotator$$5$$.$hideSelectionWidget$() : $JSCompiler_StaticMethods__getSettings$$($JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$, $opt_item_url$$1$$).$hide_selection_widget$ = $visibility$$1$$
2054 }else {
2055 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$($JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$.$_annotators$), function($annotator$$6$$) {
2056 $visibility$$1$$ ? $annotator$$6$$.$showSelectionWidget$() : $annotator$$6$$.$hideSelectionWidget$()
2057 }), $JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$.$_cachedGlobalSettings$.$hide_selection_widget$ = !$visibility$$1$$, $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$($JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$.$_cachedItemSettings$), function($settings$$3$$) {
2058 $settings$$3$$.$hide_selection_widget$ = !$visibility$$1$$
2059 })
2060 }
2061}
2062$JSCompiler_prototypeAlias$$ = $annotorious$mediatypes$Module$$.prototype;
2063$JSCompiler_prototypeAlias$$.$activateSelector$ = function $$JSCompiler_prototypeAlias$$$$activateSelector$$($opt_item_url_or_callback$$, $opt_callback$$5$$) {
2064 var $annotator$$7_item_url$$1$$ = $JSCompiler_alias_VOID$$, $callback$$34$$ = $JSCompiler_alias_VOID$$;
2065 $goog$isString$$($opt_item_url_or_callback$$) ? ($annotator$$7_item_url$$1$$ = $opt_item_url_or_callback$$, $callback$$34$$ = $opt_callback$$5$$) : $goog$isFunction$$($opt_item_url_or_callback$$) && ($callback$$34$$ = $opt_item_url_or_callback$$);
2066 $annotator$$7_item_url$$1$$ ? ($annotator$$7_item_url$$1$$ = this.$_annotators$.get($annotator$$7_item_url$$1$$)) && $annotator$$7_item_url$$1$$.$activateSelector$($callback$$34$$) : $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$8$$) {
2067 $annotator$$8$$.$activateSelector$($callback$$34$$)
2068 })
2069};
2070$JSCompiler_prototypeAlias$$.$addAnnotation$ = function $$JSCompiler_prototypeAlias$$$$addAnnotation$$($annotation$$4$$, $opt_replace$$1$$) {
2071 if($JSCompiler_StaticMethods_annotatesItem$$(this, $annotation$$4$$.src)) {
2072 var $annotator$$9$$ = this.$_annotators$.get($annotation$$4$$.src);
2073 $annotator$$9$$ ? $annotator$$9$$.$addAnnotation$($annotation$$4$$, $opt_replace$$1$$) : (this.$_bufferedForAdding$.push($annotation$$4$$), $opt_replace$$1$$ && $goog$array$remove$$(this.$_bufferedForAdding$, $opt_replace$$1$$))
2074 }
2075};
2076$JSCompiler_prototypeAlias$$.$addHandler$ = function $$JSCompiler_prototypeAlias$$$$addHandler$$($type$$83$$, $handler$$8$$) {
2077 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$10$$) {
2078 $annotator$$10$$.$addHandler$($type$$83$$, $handler$$8$$)
2079 });
2080 this.$_eventHandlers$.push({type:$type$$83$$, $handler$:$handler$$8$$})
2081};
2082$JSCompiler_prototypeAlias$$.$addPlugin$ = function $$JSCompiler_prototypeAlias$$$$addPlugin$$($plugin$$2$$) {
2083 this.$_plugins$.push($plugin$$2$$);
2084 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$11$$) {
2085 if($plugin$$2$$.onInitAnnotator) {
2086 $plugin$$2$$.onInitAnnotator($annotator$$11$$)
2087 }
2088 })
2089};
2090function $JSCompiler_StaticMethods_annotatesItem$$($JSCompiler_StaticMethods_annotatesItem$self$$, $item_url$$2$$) {
2091 return $goog$structs$Map$hasKey_$$($JSCompiler_StaticMethods_annotatesItem$self$$.$_annotators$.$map_$, $item_url$$2$$) ? $JSCompiler_alias_TRUE$$ : $goog$array$find$$($JSCompiler_StaticMethods_annotatesItem$self$$.$_itemsToLoad$, function($item$$4$$) {
2092 return $JSCompiler_StaticMethods_annotatesItem$self$$.$getItemURL$($item$$4$$) == $item_url$$2$$
2093 }) != $JSCompiler_alias_NULL$$
2094}
2095$JSCompiler_prototypeAlias$$.$destroy$ = function $$JSCompiler_prototypeAlias$$$$destroy$$($annotator$$12_opt_item_url$$2$$) {
2096 $annotator$$12_opt_item_url$$2$$ ? ($annotator$$12_opt_item_url$$2$$ = this.$_annotators$.get($annotator$$12_opt_item_url$$2$$)) && $annotator$$12_opt_item_url$$2$$.$destroy$() : ($goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$13$$) {
2097 $annotator$$13$$.$destroy$()
2098 }), this.$_annotators$.clear())
2099};
2100$JSCompiler_prototypeAlias$$.$getActiveSelector$ = function $$JSCompiler_prototypeAlias$$$$getActiveSelector$$($annotator$$14_item_url$$3$$) {
2101 if($JSCompiler_StaticMethods_annotatesItem$$(this, $annotator$$14_item_url$$3$$) && ($annotator$$14_item_url$$3$$ = this.$_annotators$.get($annotator$$14_item_url$$3$$))) {
2102 return $annotator$$14_item_url$$3$$.$getActiveSelector$().getName()
2103 }
2104};
2105$JSCompiler_prototypeAlias$$.$getAnnotations$ = function $$JSCompiler_prototypeAlias$$$$getAnnotations$$($opt_item_url$$3$$) {
2106 if($opt_item_url$$3$$) {
2107 var $annotator$$15$$ = this.$_annotators$.get($opt_item_url$$3$$);
2108 return $annotator$$15$$ ? $annotator$$15$$.$getAnnotations$() : $goog$array$filter$$(this.$_bufferedForAdding$, function($annotation$$5$$) {
2109 return $annotation$$5$$.src == $opt_item_url$$3$$
2110 })
2111 }
2112 var $annotations$$ = [];
2113 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$16$$) {
2114 $goog$array$extend$$($annotations$$, $annotator$$16$$.$getAnnotations$())
2115 });
2116 $goog$array$extend$$($annotations$$, this.$_bufferedForAdding$);
2117 return $annotations$$
2118};
2119$JSCompiler_prototypeAlias$$.$getAvailableSelectors$ = function $$JSCompiler_prototypeAlias$$$$getAvailableSelectors$$($annotator$$17_item_url$$4$$) {
2120 if($JSCompiler_StaticMethods_annotatesItem$$(this, $annotator$$17_item_url$$4$$) && ($annotator$$17_item_url$$4$$ = this.$_annotators$.get($annotator$$17_item_url$$4$$))) {
2121 return $goog$array$map$$($annotator$$17_item_url$$4$$.$getAvailableSelectors$(), function($selector$$2$$) {
2122 return $selector$$2$$.getName()
2123 })
2124 }
2125};
2126$JSCompiler_prototypeAlias$$.$hideAnnotations$ = function $$JSCompiler_prototypeAlias$$$$hideAnnotations$$($opt_item_url$$4$$) {
2127 $JSCompiler_StaticMethods__setAnnotationVisibility$$(this, $opt_item_url$$4$$, $JSCompiler_alias_FALSE$$)
2128};
2129$JSCompiler_prototypeAlias$$.$hideSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$hideSelectionWidget$$($opt_item_url$$5$$) {
2130 $JSCompiler_StaticMethods__setSelectionWidgetVisibility$$(this, $opt_item_url$$5$$, $JSCompiler_alias_FALSE$$)
2131};
2132$JSCompiler_prototypeAlias$$.$highlightAnnotation$ = function $$JSCompiler_prototypeAlias$$$$highlightAnnotation$$($annotation$$6$$) {
2133 if($annotation$$6$$) {
2134 if($JSCompiler_StaticMethods_annotatesItem$$(this, $annotation$$6$$.src)) {
2135 var $annotator$$18$$ = this.$_annotators$.get($annotation$$6$$.src);
2136 $annotator$$18$$ && $annotator$$18$$.$highlightAnnotation$($annotation$$6$$)
2137 }
2138 }else {
2139 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$19$$) {
2140 $annotator$$19$$.$highlightAnnotation$()
2141 })
2142 }
2143};
2144$JSCompiler_prototypeAlias$$.init = function $$JSCompiler_prototypeAlias$$$init$() {
2145 this.$_preLoad$ && $goog$array$extend$$(this.$_itemsToLoad$, this.$_preLoad$());
2146 $JSCompiler_StaticMethods__lazyLoad$$(this);
2147 var $self$$4$$ = this, $key$$64$$ = $goog$events$listen$$(window, "scroll", function() {
2148 0 < $self$$4$$.$_itemsToLoad$.length ? $JSCompiler_StaticMethods__lazyLoad$$($self$$4$$) : $goog$events$unlistenByKey$$($key$$64$$)
2149 })
2150};
2151$JSCompiler_prototypeAlias$$.$makeAnnotatable$ = function $$JSCompiler_prototypeAlias$$$$makeAnnotatable$$($item$$5$$) {
2152 this.$supports$($item$$5$$) && $JSCompiler_StaticMethods__initAnnotator$$(this, $item$$5$$)
2153};
2154$JSCompiler_prototypeAlias$$.$removeAnnotation$ = function $$JSCompiler_prototypeAlias$$$$removeAnnotation$$($annotation$$7$$) {
2155 if($JSCompiler_StaticMethods_annotatesItem$$(this, $annotation$$7$$.src)) {
2156 var $annotator$$20$$ = this.$_annotators$.get($annotation$$7$$.src);
2157 $annotator$$20$$ ? $annotator$$20$$.$removeAnnotation$($annotation$$7$$) : this.$_bufferedForRemoval$.push($annotation$$7$$)
2158 }
2159};
2160$JSCompiler_prototypeAlias$$.$setActiveSelector$ = function $$JSCompiler_prototypeAlias$$$$setActiveSelector$$($item_url$$5$$, $selector$$3$$) {
2161 if($JSCompiler_StaticMethods_annotatesItem$$(this, $item_url$$5$$)) {
2162 var $annotator$$21$$ = this.$_annotators$.get($item_url$$5$$);
2163 $annotator$$21$$ && $annotator$$21$$.$setActiveSelector$($selector$$3$$)
2164 }
2165};
2166$JSCompiler_prototypeAlias$$.$setProperties$ = function $$JSCompiler_prototypeAlias$$$$setProperties$$($props$$1$$) {
2167 this.$_cachedProperties$ = $props$$1$$;
2168 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$22$$) {
2169 $annotator$$22$$.$setProperties$($props$$1$$)
2170 })
2171};
2172$JSCompiler_prototypeAlias$$.$showAnnotations$ = function $$JSCompiler_prototypeAlias$$$$showAnnotations$$($opt_item_url$$6$$) {
2173 $JSCompiler_StaticMethods__setAnnotationVisibility$$(this, $opt_item_url$$6$$, $JSCompiler_alias_TRUE$$)
2174};
2175$JSCompiler_prototypeAlias$$.$showSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$showSelectionWidget$$($opt_item_url$$7$$) {
2176 $JSCompiler_StaticMethods__setSelectionWidgetVisibility$$(this, $opt_item_url$$7$$, $JSCompiler_alias_TRUE$$)
2177};
2178function $goog$soy$renderAsElement$$($template$$2$$, $opt_templateData$$2$$) {
2179 var $wrapper$$4$$ = $goog$dom$getDomHelper$$().createElement("DIV");
2180 $wrapper$$4$$.innerHTML = $template$$2$$($opt_templateData$$2$$ || $goog$soy$defaultTemplateData_$$, $JSCompiler_alias_VOID$$, $JSCompiler_alias_VOID$$);
2181 if(1 == $wrapper$$4$$.childNodes.length) {
2182 var $firstChild$$ = $wrapper$$4$$.firstChild;
2183 if(1 == $firstChild$$.nodeType) {
2184 return $firstChild$$
2185 }
2186 }
2187 return $wrapper$$4$$
2188}
2189var $goog$soy$defaultTemplateData_$$ = {};
2190function $goog$string$StringBuffer$$($opt_a1$$, $var_args$$69$$) {
2191 $opt_a1$$ != $JSCompiler_alias_NULL$$ && this.append.apply(this, arguments)
2192}
2193$JSCompiler_prototypeAlias$$ = $goog$string$StringBuffer$$.prototype;
2194$JSCompiler_prototypeAlias$$.$buffer_$ = "";
2195$JSCompiler_prototypeAlias$$.set = function $$JSCompiler_prototypeAlias$$$set$($s$$19$$) {
2196 this.$buffer_$ = "" + $s$$19$$
2197};
2198$JSCompiler_prototypeAlias$$.append = function $$JSCompiler_prototypeAlias$$$append$($a1$$, $opt_a2$$, $var_args$$70$$) {
2199 this.$buffer_$ += $a1$$;
2200 if($opt_a2$$ != $JSCompiler_alias_NULL$$) {
2201 for(var $i$$105$$ = 1;$i$$105$$ < arguments.length;$i$$105$$++) {
2202 this.$buffer_$ += arguments[$i$$105$$]
2203 }
2204 }
2205 return this
2206};
2207$JSCompiler_prototypeAlias$$.clear = function $$JSCompiler_prototypeAlias$$$clear$() {
2208 this.$buffer_$ = ""
2209};
2210$JSCompiler_prototypeAlias$$.toString = $JSCompiler_get$$("$buffer_$");
2211/*
2212 Portions of this code are from the google-caja project, received by
2213 Google under the Apache license (http://code.google.com/p/google-caja/).
2214 All other code is Copyright 2009 Google, Inc. All Rights Reserved.
2215
2216// Copyright (C) 2006 Google Inc.
2217//
2218// Licensed under the Apache License, Version 2.0 (the "License");
2219// you may not use this file except in compliance with the License.
2220// You may obtain a copy of the License at
2221//
2222// http://www.apache.org/licenses/LICENSE-2.0
2223//
2224// Unless required by applicable law or agreed to in writing, software
2225// distributed under the License is distributed on an "AS IS" BASIS,
2226// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2227// See the License for the specific language governing permissions and
2228// limitations under the License.
2229
2230*/
2231function $goog$string$html$HtmlParser$$() {
2232}
2233var $goog$string$html$HtmlParser$Entities$$ = {$lt$:"<", $gt$:">", $amp$:"&", $nbsp$:"\u00a0", $quot$:'"', $apos$:"'"}, $goog$string$html$HtmlParser$Elements$$ = {a:0, abbr:0, acronym:0, address:0, applet:16, area:2, b:0, base:18, basefont:18, bdo:0, big:0, blockquote:0, body:49, br:2, button:0, caption:0, center:0, cite:0, code:0, col:2, colgroup:1, dd:1, del:0, dfn:0, dir:0, div:0, dl:0, dt:1, em:0, fieldset:0, font:0, form:0, frame:18, frameset:16, h1:0, h2:0, h3:0, h4:0, h5:0, h6:0, head:49,
2234hr:2, html:49, i:0, iframe:20, img:2, input:2, ins:0, isindex:18, kbd:0, label:0, legend:0, li:1, link:18, map:0, menu:0, meta:18, noframes:20, noscript:20, object:16, ol:0, optgroup:0, option:1, p:1, param:18, pre:0, q:0, s:0, samp:0, script:20, select:0, small:0, span:0, strike:0, strong:0, style:20, sub:0, sup:0, table:0, tbody:1, td:1, textarea:8, tfoot:1, th:1, thead:1, title:24, tr:1, tt:0, u:0, ul:0, "var":0}, $goog$string$html$HtmlParser$AMP_RE_$$ = /&/g, $goog$string$html$HtmlParser$LOOSE_AMP_RE_$$ =
2235/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi, $goog$string$html$HtmlParser$LT_RE_$$ = /</g, $goog$string$html$HtmlParser$GT_RE_$$ = />/g, $goog$string$html$HtmlParser$QUOTE_RE_$$ = /\"/g, $goog$string$html$HtmlParser$EQUALS_RE_$$ = /=/g, $goog$string$html$HtmlParser$NULL_RE_$$ = /\0/g, $goog$string$html$HtmlParser$ENTITY_RE_$$ = /&(#\d+|#x[0-9A-Fa-f]+|\w+);/g, $goog$string$html$HtmlParser$DECIMAL_ESCAPE_RE_$$ = /^#(\d+)$/, $goog$string$html$HtmlParser$HEX_ESCAPE_RE_$$ = /^#x([0-9A-Fa-f]+)$/,
2236$goog$string$html$HtmlParser$INSIDE_TAG_TOKEN_$$ = RegExp("^\\s*(?:(?:([a-z][a-z-]*)(\\s*=\\s*(\"[^\"]*\"|'[^']*'|(?=[a-z][a-z-]*\\s*=)|[^>\"'\\s]*))?)|(/?>)|[^a-z\\s>]+)", "i"), $goog$string$html$HtmlParser$OUTSIDE_TAG_TOKEN_$$ = RegExp("^(?:&(\\#[0-9]+|\\#[x][0-9a-f]+|\\w+);|<[!]--[\\s\\S]*?--\>|<!\\w[^>]*>|<\\?[^>*]*>|<(/)?([a-z][a-z0-9]*)|([^<&>]+)|([<&>]))", "i");
2237$goog$string$html$HtmlParser$$.prototype.parse = function $$goog$string$html$HtmlParser$$$$parse$($handler$$9$$, $htmlText$$) {
2238 var $htmlLower_i$$inline_505$$ = $JSCompiler_alias_NULL$$, $dataEnd_inTag$$1$$ = $JSCompiler_alias_FALSE$$, $attribs$$ = [], $tagName$$6$$, $eflags$$, $openTag$$;
2239 $handler$$9$$.$stack_$ = [];
2240 for($handler$$9$$.$ignoring_$ = $JSCompiler_alias_FALSE$$;$htmlText$$;) {
2241 var $decodedValue_encodedValue_m$$ = $htmlText$$.match($dataEnd_inTag$$1$$ ? $goog$string$html$HtmlParser$INSIDE_TAG_TOKEN_$$ : $goog$string$html$HtmlParser$OUTSIDE_TAG_TOKEN_$$), $htmlText$$ = $htmlText$$.substring($decodedValue_encodedValue_m$$[0].length);
2242 if($dataEnd_inTag$$1$$) {
2243 if($decodedValue_encodedValue_m$$[1]) {
2244 var $attribName$$ = $decodedValue_encodedValue_m$$[1].toLowerCase();
2245 if($decodedValue_encodedValue_m$$[2]) {
2246 $decodedValue_encodedValue_m$$ = $decodedValue_encodedValue_m$$[3];
2247 switch($decodedValue_encodedValue_m$$.charCodeAt(0)) {
2248 case 34:
2249 ;
2250 case 39:
2251 $decodedValue_encodedValue_m$$ = $decodedValue_encodedValue_m$$.substring(1, $decodedValue_encodedValue_m$$.length - 1)
2252 }
2253 $decodedValue_encodedValue_m$$ = $decodedValue_encodedValue_m$$.replace($goog$string$html$HtmlParser$NULL_RE_$$, "").replace($goog$string$html$HtmlParser$ENTITY_RE_$$, $goog$bind$$(this.$lookupEntity_$, this))
2254 }else {
2255 $decodedValue_encodedValue_m$$ = $attribName$$
2256 }
2257 $attribs$$.push($attribName$$, $decodedValue_encodedValue_m$$)
2258 }else {
2259 $decodedValue_encodedValue_m$$[4] && ($eflags$$ !== $JSCompiler_alias_VOID$$ && ($openTag$$ ? $handler$$9$$.$startTag$ && $handler$$9$$.$startTag$($tagName$$6$$, $attribs$$) : $handler$$9$$.$endTag$ && $handler$$9$$.$endTag$($tagName$$6$$)), $openTag$$ && $eflags$$ & 12 && ($htmlLower_i$$inline_505$$ = $htmlLower_i$$inline_505$$ === $JSCompiler_alias_NULL$$ ? $htmlText$$.toLowerCase() : $htmlLower_i$$inline_505$$.substring($htmlLower_i$$inline_505$$.length - $htmlText$$.length), $dataEnd_inTag$$1$$ =
2260 $htmlLower_i$$inline_505$$.indexOf("</" + $tagName$$6$$), 0 > $dataEnd_inTag$$1$$ && ($dataEnd_inTag$$1$$ = $htmlText$$.length), $eflags$$ & 4 ? $handler$$9$$.$cdata$ && $handler$$9$$.$cdata$($htmlText$$.substring(0, $dataEnd_inTag$$1$$)) : $handler$$9$$.$rcdata$ && $handler$$9$$.$rcdata$($htmlText$$.substring(0, $dataEnd_inTag$$1$$).replace($goog$string$html$HtmlParser$LOOSE_AMP_RE_$$, "&amp;$1").replace($goog$string$html$HtmlParser$LT_RE_$$, "&lt;").replace($goog$string$html$HtmlParser$GT_RE_$$,
2261 "&gt;")), $htmlText$$ = $htmlText$$.substring($dataEnd_inTag$$1$$)), $tagName$$6$$ = $eflags$$ = $openTag$$ = $JSCompiler_alias_VOID$$, $attribs$$.length = 0, $dataEnd_inTag$$1$$ = $JSCompiler_alias_FALSE$$)
2262 }
2263 }else {
2264 if($decodedValue_encodedValue_m$$[1]) {
2265 $JSCompiler_StaticMethods_pcdata$$($handler$$9$$, $decodedValue_encodedValue_m$$[0])
2266 }else {
2267 if($decodedValue_encodedValue_m$$[3]) {
2268 $openTag$$ = !$decodedValue_encodedValue_m$$[2], $dataEnd_inTag$$1$$ = $JSCompiler_alias_TRUE$$, $tagName$$6$$ = $decodedValue_encodedValue_m$$[3].toLowerCase(), $eflags$$ = $goog$string$html$HtmlParser$Elements$$.hasOwnProperty($tagName$$6$$) ? $goog$string$html$HtmlParser$Elements$$[$tagName$$6$$] : $JSCompiler_alias_VOID$$
2269 }else {
2270 if($decodedValue_encodedValue_m$$[4]) {
2271 $JSCompiler_StaticMethods_pcdata$$($handler$$9$$, $decodedValue_encodedValue_m$$[4])
2272 }else {
2273 if($decodedValue_encodedValue_m$$[5]) {
2274 switch($decodedValue_encodedValue_m$$[5]) {
2275 case "<":
2276 $JSCompiler_StaticMethods_pcdata$$($handler$$9$$, "&lt;");
2277 break;
2278 case ">":
2279 $JSCompiler_StaticMethods_pcdata$$($handler$$9$$, "&gt;");
2280 break;
2281 default:
2282 $JSCompiler_StaticMethods_pcdata$$($handler$$9$$, "&amp;")
2283 }
2284 }
2285 }
2286 }
2287 }
2288 }
2289 }
2290 for($htmlLower_i$$inline_505$$ = $handler$$9$$.$stack_$.length;0 <= --$htmlLower_i$$inline_505$$;) {
2291 $handler$$9$$.$stringBuffer_$.append("</", $handler$$9$$.$stack_$[$htmlLower_i$$inline_505$$], ">")
2292 }
2293 $handler$$9$$.$stack_$.length = 0
2294};
2295$goog$string$html$HtmlParser$$.prototype.$lookupEntity_$ = function $$goog$string$html$HtmlParser$$$$$lookupEntity_$$($name$$70$$) {
2296 $name$$70$$ = $name$$70$$.toLowerCase();
2297 if($goog$string$html$HtmlParser$Entities$$.hasOwnProperty($name$$70$$)) {
2298 return $goog$string$html$HtmlParser$Entities$$[$name$$70$$]
2299 }
2300 var $m$$1$$ = $name$$70$$.match($goog$string$html$HtmlParser$DECIMAL_ESCAPE_RE_$$);
2301 return $m$$1$$ ? String.fromCharCode(parseInt($m$$1$$[1], 10)) : ($m$$1$$ = $name$$70$$.match($goog$string$html$HtmlParser$HEX_ESCAPE_RE_$$)) ? String.fromCharCode(parseInt($m$$1$$[1], 16)) : ""
2302};
2303function $goog$string$html$HtmlSaxHandler$$() {
2304}
2305;/*
2306 Portions of this code are from the google-caja project, received by
2307 Google under the Apache license (http://code.google.com/p/google-caja/).
2308 All other code is Copyright 2009 Google, Inc. All Rights Reserved.
2309
2310// Copyright (C) 2006 Google Inc.
2311//
2312// Licensed under the Apache License, Version 2.0 (the "License");
2313// you may not use this file except in compliance with the License.
2314// You may obtain a copy of the License at
2315//
2316// http://www.apache.org/licenses/LICENSE-2.0
2317//
2318// Unless required by applicable law or agreed to in writing, software
2319// distributed under the License is distributed on an "AS IS" BASIS,
2320// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2321// See the License for the specific language governing permissions and
2322// limitations under the License.
2323
2324*/
2325function $goog$string$html$HtmlSanitizer$$($stringBuffer$$1$$, $opt_urlPolicy$$1$$, $opt_nmTokenPolicy$$1$$) {
2326 this.$stringBuffer_$ = $stringBuffer$$1$$;
2327 this.$stack_$ = [];
2328 this.$ignoring_$ = $JSCompiler_alias_FALSE$$;
2329 this.$urlPolicy_$ = $opt_urlPolicy$$1$$;
2330 this.$nmTokenPolicy_$ = $opt_nmTokenPolicy$$1$$
2331}
2332$goog$inherits$$($goog$string$html$HtmlSanitizer$$, $goog$string$html$HtmlSaxHandler$$);
2333var $goog$string$html$HtmlSanitizer$Attributes$$ = {"*::class":9, "*::dir":0, "*::id":4, "*::lang":0, "*::onclick":2, "*::ondblclick":2, "*::onkeydown":2, "*::onkeypress":2, "*::onkeyup":2, "*::onload":2, "*::onmousedown":2, "*::onmousemove":2, "*::onmouseout":2, "*::onmouseover":2, "*::onmouseup":2, "*::style":3, "*::title":0, "*::accesskey":0, "*::tabindex":0, "*::onfocus":2, "*::onblur":2, "a::coords":0, "a::href":1, "a::hreflang":0, "a::name":7, "a::onblur":2, "a::rel":0, "a::rev":0, "a::shape":0,
2334"a::target":10, "a::type":0, "area::accesskey":0, "area::alt":0, "area::coords":0, "area::href":1, "area::nohref":0, "area::onfocus":2, "area::shape":0, "area::tabindex":0, "area::target":10, "bdo::dir":0, "blockquote::cite":1, "br::clear":0, "button::accesskey":0, "button::disabled":0, "button::name":8, "button::onblur":2, "button::onfocus":2, "button::tabindex":0, "button::type":0, "button::value":0, "caption::align":0, "col::align":0, "col::char":0, "col::charoff":0, "col::span":0, "col::valign":0,
2335"col::width":0, "colgroup::align":0, "colgroup::char":0, "colgroup::charoff":0, "colgroup::span":0, "colgroup::valign":0, "colgroup::width":0, "del::cite":1, "del::datetime":0, "dir::compact":0, "div::align":0, "dl::compact":0, "font::color":0, "font::face":0, "font::size":0, "form::accept":0, "form::action":1, "form::autocomplete":0, "form::enctype":0, "form::method":0, "form::name":7, "form::onreset":2, "form::onsubmit":2, "form::target":10, "h1::align":0, "h2::align":0, "h3::align":0, "h4::align":0,
2336"h5::align":0, "h6::align":0, "hr::align":0, "hr::noshade":0, "hr::size":0, "hr::width":0, "img::align":0, "img::alt":0, "img::border":0, "img::height":0, "img::hspace":0, "img::ismap":0, "img::longdesc":1, "img::name":7, "img::src":1, "img::usemap":11, "img::vspace":0, "img::width":0, "input::accept":0, "input::accesskey":0, "input::autocomplete":0, "input::align":0, "input::alt":0, "input::checked":0, "input::disabled":0, "input::ismap":0, "input::maxlength":0, "input::name":8, "input::onblur":2,
2337"input::onchange":2, "input::onfocus":2, "input::onselect":2, "input::readonly":0, "input::size":0, "input::src":1, "input::tabindex":0, "input::type":0, "input::usemap":11, "input::value":0, "ins::cite":1, "ins::datetime":0, "label::accesskey":0, "label::for":5, "label::onblur":2, "label::onfocus":2, "legend::accesskey":0, "legend::align":0, "li::type":0, "li::value":0, "map::name":7, "menu::compact":0, "ol::compact":0, "ol::start":0, "ol::type":0, "optgroup::disabled":0, "optgroup::label":0, "option::disabled":0,
2338"option::label":0, "option::selected":0, "option::value":0, "p::align":0, "pre::width":0, "q::cite":1, "select::disabled":0, "select::multiple":0, "select::name":8, "select::onblur":2, "select::onchange":2, "select::onfocus":2, "select::size":0, "select::tabindex":0, "table::align":0, "table::bgcolor":0, "table::border":0, "table::cellpadding":0, "table::cellspacing":0, "table::frame":0, "table::rules":0, "table::summary":0, "table::width":0, "tbody::align":0, "tbody::char":0, "tbody::charoff":0,
2339"tbody::valign":0, "td::abbr":0, "td::align":0, "td::axis":0, "td::bgcolor":0, "td::char":0, "td::charoff":0, "td::colspan":0, "td::headers":6, "td::height":0, "td::nowrap":0, "td::rowspan":0, "td::scope":0, "td::valign":0, "td::width":0, "textarea::accesskey":0, "textarea::cols":0, "textarea::disabled":0, "textarea::name":8, "textarea::onblur":2, "textarea::onchange":2, "textarea::onfocus":2, "textarea::onselect":2, "textarea::readonly":0, "textarea::rows":0, "textarea::tabindex":0, "tfoot::align":0,
2340"tfoot::char":0, "tfoot::charoff":0, "tfoot::valign":0, "th::abbr":0, "th::align":0, "th::axis":0, "th::bgcolor":0, "th::char":0, "th::charoff":0, "th::colspan":0, "th::headers":6, "th::height":0, "th::nowrap":0, "th::rowspan":0, "th::scope":0, "th::valign":0, "th::width":0, "thead::align":0, "thead::char":0, "thead::charoff":0, "thead::valign":0, "tr::align":0, "tr::bgcolor":0, "tr::char":0, "tr::charoff":0, "tr::valign":0, "ul::compact":0, "ul::type":0};
2341$goog$string$html$HtmlSanitizer$$.prototype.$startTag$ = function $$goog$string$html$HtmlSanitizer$$$$$startTag$$($tagName$$7$$, $attribs$$1$$) {
2342 if(!this.$ignoring_$ && $goog$string$html$HtmlParser$Elements$$.hasOwnProperty($tagName$$7$$)) {
2343 var $eflags$$1_i$$106$$ = $goog$string$html$HtmlParser$Elements$$[$tagName$$7$$];
2344 if(!($eflags$$1_i$$106$$ & 32)) {
2345 if($eflags$$1_i$$106$$ & 16) {
2346 this.$ignoring_$ = !($eflags$$1_i$$106$$ & 2)
2347 }else {
2348 for(var $attribs$$inline_509_n$$7$$ = $attribs$$1$$, $attribName$$1_i$$inline_510$$ = 0;$attribName$$1_i$$inline_510$$ < $attribs$$inline_509_n$$7$$.length;$attribName$$1_i$$inline_510$$ += 2) {
2349 var $attribName$$inline_511_value$$75$$ = $attribs$$inline_509_n$$7$$[$attribName$$1_i$$inline_510$$], $value$$inline_512$$ = $attribs$$inline_509_n$$7$$[$attribName$$1_i$$inline_510$$ + 1], $atype$$inline_513$$ = $JSCompiler_alias_NULL$$, $attribKey$$inline_514$$;
2350 if(($attribKey$$inline_514$$ = $tagName$$7$$ + "::" + $attribName$$inline_511_value$$75$$, $goog$string$html$HtmlSanitizer$Attributes$$.hasOwnProperty($attribKey$$inline_514$$)) || ($attribKey$$inline_514$$ = "*::" + $attribName$$inline_511_value$$75$$, $goog$string$html$HtmlSanitizer$Attributes$$.hasOwnProperty($attribKey$$inline_514$$))) {
2351 $atype$$inline_513$$ = $goog$string$html$HtmlSanitizer$Attributes$$[$attribKey$$inline_514$$]
2352 }
2353 if($atype$$inline_513$$ !== $JSCompiler_alias_NULL$$) {
2354 switch($atype$$inline_513$$) {
2355 case 0:
2356 break;
2357 case 2:
2358 ;
2359 case 3:
2360 $value$$inline_512$$ = $JSCompiler_alias_NULL$$;
2361 break;
2362 case 4:
2363 ;
2364 case 5:
2365 ;
2366 case 6:
2367 ;
2368 case 7:
2369 ;
2370 case 8:
2371 ;
2372 case 9:
2373 $value$$inline_512$$ = this.$nmTokenPolicy_$ ? this.$nmTokenPolicy_$($value$$inline_512$$) : $value$$inline_512$$;
2374 break;
2375 case 1:
2376 $value$$inline_512$$ = this.$urlPolicy_$ && this.$urlPolicy_$($value$$inline_512$$);
2377 break;
2378 case 11:
2379 $value$$inline_512$$ && "#" === $value$$inline_512$$.charAt(0) ? ($value$$inline_512$$ = this.$nmTokenPolicy_$ ? this.$nmTokenPolicy_$($value$$inline_512$$) : $value$$inline_512$$) && ($value$$inline_512$$ = "#" + $value$$inline_512$$) : $value$$inline_512$$ = $JSCompiler_alias_NULL$$;
2380 break;
2381 default:
2382 $value$$inline_512$$ = $JSCompiler_alias_NULL$$
2383 }
2384 }else {
2385 $value$$inline_512$$ = $JSCompiler_alias_NULL$$
2386 }
2387 $attribs$$inline_509_n$$7$$[$attribName$$1_i$$inline_510$$ + 1] = $value$$inline_512$$
2388 }
2389 if($attribs$$1$$ = $attribs$$inline_509_n$$7$$) {
2390 $eflags$$1_i$$106$$ & 2 || this.$stack_$.push($tagName$$7$$);
2391 this.$stringBuffer_$.append("<", $tagName$$7$$);
2392 $eflags$$1_i$$106$$ = 0;
2393 for($attribs$$inline_509_n$$7$$ = $attribs$$1$$.length;$eflags$$1_i$$106$$ < $attribs$$inline_509_n$$7$$;$eflags$$1_i$$106$$ += 2) {
2394 $attribName$$1_i$$inline_510$$ = $attribs$$1$$[$eflags$$1_i$$106$$], $attribName$$inline_511_value$$75$$ = $attribs$$1$$[$eflags$$1_i$$106$$ + 1], $attribName$$inline_511_value$$75$$ !== $JSCompiler_alias_NULL$$ && $attribName$$inline_511_value$$75$$ !== $JSCompiler_alias_VOID$$ && this.$stringBuffer_$.append(" ", $attribName$$1_i$$inline_510$$, '="', $attribName$$inline_511_value$$75$$.replace($goog$string$html$HtmlParser$AMP_RE_$$, "&amp;").replace($goog$string$html$HtmlParser$LT_RE_$$,
2395 "&lt;").replace($goog$string$html$HtmlParser$GT_RE_$$, "&gt;").replace($goog$string$html$HtmlParser$QUOTE_RE_$$, "&#34;").replace($goog$string$html$HtmlParser$EQUALS_RE_$$, "&#61;"), '"')
2396 }
2397 this.$stringBuffer_$.append(">")
2398 }
2399 }
2400 }
2401 }
2402};
2403$goog$string$html$HtmlSanitizer$$.prototype.$endTag$ = function $$goog$string$html$HtmlSanitizer$$$$$endTag$$($tagName$$8$$) {
2404 if(this.$ignoring_$) {
2405 this.$ignoring_$ = $JSCompiler_alias_FALSE$$
2406 }else {
2407 if($goog$string$html$HtmlParser$Elements$$.hasOwnProperty($tagName$$8$$)) {
2408 var $eflags$$2_index$$54$$ = $goog$string$html$HtmlParser$Elements$$[$tagName$$8$$];
2409 if(!($eflags$$2_index$$54$$ & 50)) {
2410 if($eflags$$2_index$$54$$ & 1) {
2411 for($eflags$$2_index$$54$$ = this.$stack_$.length;0 <= --$eflags$$2_index$$54$$;) {
2412 var $stackEl$$ = this.$stack_$[$eflags$$2_index$$54$$];
2413 if($stackEl$$ === $tagName$$8$$) {
2414 break
2415 }
2416 if(!($goog$string$html$HtmlParser$Elements$$[$stackEl$$] & 1)) {
2417 return
2418 }
2419 }
2420 }else {
2421 for($eflags$$2_index$$54$$ = this.$stack_$.length;0 <= --$eflags$$2_index$$54$$ && this.$stack_$[$eflags$$2_index$$54$$] !== $tagName$$8$$;) {
2422 }
2423 }
2424 if(!(0 > $eflags$$2_index$$54$$)) {
2425 for(var $i$$107$$ = this.$stack_$.length;--$i$$107$$ > $eflags$$2_index$$54$$;) {
2426 $stackEl$$ = this.$stack_$[$i$$107$$], $goog$string$html$HtmlParser$Elements$$[$stackEl$$] & 1 || this.$stringBuffer_$.append("</", $stackEl$$, ">")
2427 }
2428 this.$stack_$.length = $eflags$$2_index$$54$$;
2429 this.$stringBuffer_$.append("</", $tagName$$8$$, ">")
2430 }
2431 }
2432 }
2433 }
2434};
2435function $JSCompiler_StaticMethods_pcdata$$($JSCompiler_StaticMethods_pcdata$self$$, $text$$11$$) {
2436 $JSCompiler_StaticMethods_pcdata$self$$.$ignoring_$ || $JSCompiler_StaticMethods_pcdata$self$$.$stringBuffer_$.append($text$$11$$)
2437}
2438$goog$string$html$HtmlSanitizer$$.prototype.$rcdata$ = function $$goog$string$html$HtmlSanitizer$$$$$rcdata$$($text$$12$$) {
2439 this.$ignoring_$ || this.$stringBuffer_$.append($text$$12$$)
2440};
2441$goog$string$html$HtmlSanitizer$$.prototype.$cdata$ = function $$goog$string$html$HtmlSanitizer$$$$$cdata$$($text$$13$$) {
2442 this.$ignoring_$ || this.$stringBuffer_$.append($text$$13$$)
2443};
2444function $goog$events$KeyCodes$firesKeyPressEvent$$($keyCode$$, $opt_heldKeyCode$$, $opt_shiftKey$$, $opt_ctrlKey$$, $opt_altKey$$) {
2445 if(!$goog$userAgent$IE$$ && (!$goog$userAgent$WEBKIT$$ || !$goog$userAgent$isVersion$$("525"))) {
2446 return $JSCompiler_alias_TRUE$$
2447 }
2448 if($goog$userAgent$detectedMac_$$ && $opt_altKey$$) {
2449 return $goog$events$KeyCodes$isCharacterKey$$($keyCode$$)
2450 }
2451 if($opt_altKey$$ && !$opt_ctrlKey$$ || !$opt_shiftKey$$ && (17 == $opt_heldKeyCode$$ || 18 == $opt_heldKeyCode$$) || $goog$userAgent$IE$$ && $opt_ctrlKey$$ && $opt_heldKeyCode$$ == $keyCode$$) {
2452 return $JSCompiler_alias_FALSE$$
2453 }
2454 switch($keyCode$$) {
2455 case 13:
2456 return!($goog$userAgent$IE$$ && $goog$userAgent$isDocumentMode$$(9));
2457 case 27:
2458 return!$goog$userAgent$WEBKIT$$
2459 }
2460 return $goog$events$KeyCodes$isCharacterKey$$($keyCode$$)
2461}
2462function $goog$events$KeyCodes$isCharacterKey$$($keyCode$$1$$) {
2463 if(48 <= $keyCode$$1$$ && 57 >= $keyCode$$1$$ || 96 <= $keyCode$$1$$ && 106 >= $keyCode$$1$$ || 65 <= $keyCode$$1$$ && 90 >= $keyCode$$1$$ || $goog$userAgent$WEBKIT$$ && 0 == $keyCode$$1$$) {
2464 return $JSCompiler_alias_TRUE$$
2465 }
2466 switch($keyCode$$1$$) {
2467 case 32:
2468 ;
2469 case 63:
2470 ;
2471 case 107:
2472 ;
2473 case 109:
2474 ;
2475 case 110:
2476 ;
2477 case 111:
2478 ;
2479 case 186:
2480 ;
2481 case 59:
2482 ;
2483 case 189:
2484 ;
2485 case 187:
2486 ;
2487 case 61:
2488 ;
2489 case 188:
2490 ;
2491 case 190:
2492 ;
2493 case 191:
2494 ;
2495 case 192:
2496 ;
2497 case 222:
2498 ;
2499 case 219:
2500 ;
2501 case 220:
2502 ;
2503 case 221:
2504 return $JSCompiler_alias_TRUE$$;
2505 default:
2506 return $JSCompiler_alias_FALSE$$
2507 }
2508}
2509function $goog$events$KeyCodes$normalizeGeckoKeyCode$$($keyCode$$2$$) {
2510 switch($keyCode$$2$$) {
2511 case 61:
2512 return 187;
2513 case 59:
2514 return 186;
2515 case 224:
2516 return 91;
2517 case 0:
2518 return 224;
2519 default:
2520 return $keyCode$$2$$
2521 }
2522}
2523;function $goog$events$KeyHandler$$($opt_element$$11$$, $opt_capture$$6$$) {
2524 $goog$Disposable$$.call(this);
2525 $opt_element$$11$$ && $JSCompiler_StaticMethods_attach$$(this, $opt_element$$11$$, $opt_capture$$6$$)
2526}
2527$goog$inherits$$($goog$events$KeyHandler$$, $goog$events$EventTarget$$);
2528$JSCompiler_prototypeAlias$$ = $goog$events$KeyHandler$$.prototype;
2529$JSCompiler_prototypeAlias$$.$element_$ = $JSCompiler_alias_NULL$$;
2530$JSCompiler_prototypeAlias$$.$keyPressKey_$ = $JSCompiler_alias_NULL$$;
2531$JSCompiler_prototypeAlias$$.$keyDownKey_$ = $JSCompiler_alias_NULL$$;
2532$JSCompiler_prototypeAlias$$.$keyUpKey_$ = $JSCompiler_alias_NULL$$;
2533$JSCompiler_prototypeAlias$$.$lastKey_$ = -1;
2534$JSCompiler_prototypeAlias$$.$keyCode_$ = -1;
2535$JSCompiler_prototypeAlias$$.$altKey_$ = $JSCompiler_alias_FALSE$$;
2536var $goog$events$KeyHandler$safariKey_$$ = {3:13, 12:144, 63232:38, 63233:40, 63234:37, 63235:39, 63236:112, 63237:113, 63238:114, 63239:115, 63240:116, 63241:117, 63242:118, 63243:119, 63244:120, 63245:121, 63246:122, 63247:123, 63248:44, 63272:46, 63273:36, 63275:35, 63276:33, 63277:34, 63289:144, 63302:45}, $goog$events$KeyHandler$keyIdentifier_$$ = {Up:38, Down:40, Left:37, Right:39, Enter:13, F1:112, F2:113, F3:114, F4:115, F5:116, F6:117, F7:118, F8:119, F9:120, F10:121, F11:122, F12:123, "U+007F":46,
2537Home:36, End:35, PageUp:33, PageDown:34, Insert:45}, $goog$events$KeyHandler$USES_KEYDOWN_$$ = $goog$userAgent$IE$$ || $goog$userAgent$WEBKIT$$ && $goog$userAgent$isVersion$$("525"), $goog$events$KeyHandler$SAVE_ALT_FOR_KEYPRESS_$$ = $goog$userAgent$detectedMac_$$ && $goog$userAgent$GECKO$$;
2538$JSCompiler_prototypeAlias$$ = $goog$events$KeyHandler$$.prototype;
2539$JSCompiler_prototypeAlias$$.$handleKeyDown_$ = function $$JSCompiler_prototypeAlias$$$$handleKeyDown_$$($e$$36$$) {
2540 if($goog$userAgent$WEBKIT$$ && (17 == this.$lastKey_$ && !$e$$36$$.ctrlKey || 18 == this.$lastKey_$ && !$e$$36$$.altKey)) {
2541 this.$keyCode_$ = this.$lastKey_$ = -1
2542 }
2543 $goog$events$KeyHandler$USES_KEYDOWN_$$ && !$goog$events$KeyCodes$firesKeyPressEvent$$($e$$36$$.keyCode, this.$lastKey_$, $e$$36$$.shiftKey, $e$$36$$.ctrlKey, $e$$36$$.altKey) ? this.handleEvent($e$$36$$) : (this.$keyCode_$ = $goog$userAgent$GECKO$$ ? $goog$events$KeyCodes$normalizeGeckoKeyCode$$($e$$36$$.keyCode) : $e$$36$$.keyCode, $goog$events$KeyHandler$SAVE_ALT_FOR_KEYPRESS_$$ && (this.$altKey_$ = $e$$36$$.altKey))
2544};
2545$JSCompiler_prototypeAlias$$.$handleKeyup_$ = function $$JSCompiler_prototypeAlias$$$$handleKeyup_$$($e$$37$$) {
2546 this.$keyCode_$ = this.$lastKey_$ = -1;
2547 this.$altKey_$ = $e$$37$$.altKey
2548};
2549$JSCompiler_prototypeAlias$$.handleEvent = function $$JSCompiler_prototypeAlias$$$handleEvent$($e$$38_repeat$$) {
2550 var $be$$2_event$$3$$ = $e$$38_repeat$$.$event_$, $keyCode$$3$$, $charCode$$, $altKey$$2$$ = $be$$2_event$$3$$.altKey;
2551 $goog$userAgent$IE$$ && "keypress" == $e$$38_repeat$$.type ? ($keyCode$$3$$ = this.$keyCode_$, $charCode$$ = 13 != $keyCode$$3$$ && 27 != $keyCode$$3$$ ? $be$$2_event$$3$$.keyCode : 0) : $goog$userAgent$WEBKIT$$ && "keypress" == $e$$38_repeat$$.type ? ($keyCode$$3$$ = this.$keyCode_$, $charCode$$ = 0 <= $be$$2_event$$3$$.charCode && 63232 > $be$$2_event$$3$$.charCode && $goog$events$KeyCodes$isCharacterKey$$($keyCode$$3$$) ? $be$$2_event$$3$$.charCode : 0) : $goog$userAgent$OPERA$$ ? ($keyCode$$3$$ =
2552 this.$keyCode_$, $charCode$$ = $goog$events$KeyCodes$isCharacterKey$$($keyCode$$3$$) ? $be$$2_event$$3$$.keyCode : 0) : ($keyCode$$3$$ = $be$$2_event$$3$$.keyCode || this.$keyCode_$, $charCode$$ = $be$$2_event$$3$$.charCode || 0, $goog$events$KeyHandler$SAVE_ALT_FOR_KEYPRESS_$$ && ($altKey$$2$$ = this.$altKey_$), $goog$userAgent$detectedMac_$$ && (63 == $charCode$$ && 224 == $keyCode$$3$$) && ($keyCode$$3$$ = 191));
2553 var $key$$65$$ = $keyCode$$3$$, $keyIdentifier$$ = $be$$2_event$$3$$.keyIdentifier;
2554 $keyCode$$3$$ ? 63232 <= $keyCode$$3$$ && $keyCode$$3$$ in $goog$events$KeyHandler$safariKey_$$ ? $key$$65$$ = $goog$events$KeyHandler$safariKey_$$[$keyCode$$3$$] : 25 == $keyCode$$3$$ && $e$$38_repeat$$.shiftKey && ($key$$65$$ = 9) : $keyIdentifier$$ && $keyIdentifier$$ in $goog$events$KeyHandler$keyIdentifier_$$ && ($key$$65$$ = $goog$events$KeyHandler$keyIdentifier_$$[$keyIdentifier$$]);
2555 $e$$38_repeat$$ = $key$$65$$ == this.$lastKey_$;
2556 this.$lastKey_$ = $key$$65$$;
2557 $be$$2_event$$3$$ = new $goog$events$KeyEvent$$($key$$65$$, $charCode$$, $e$$38_repeat$$, $be$$2_event$$3$$);
2558 $be$$2_event$$3$$.altKey = $altKey$$2$$;
2559 this.dispatchEvent($be$$2_event$$3$$)
2560};
2561$JSCompiler_prototypeAlias$$.$getElement$ = $JSCompiler_get$$("$element_$");
2562function $JSCompiler_StaticMethods_attach$$($JSCompiler_StaticMethods_attach$self$$, $element$$71$$, $opt_capture$$7$$) {
2563 $JSCompiler_StaticMethods_attach$self$$.$keyUpKey_$ && $JSCompiler_StaticMethods_attach$self$$.detach();
2564 $JSCompiler_StaticMethods_attach$self$$.$element_$ = $element$$71$$;
2565 $JSCompiler_StaticMethods_attach$self$$.$keyPressKey_$ = $goog$events$listen$$($JSCompiler_StaticMethods_attach$self$$.$element_$, "keypress", $JSCompiler_StaticMethods_attach$self$$, $opt_capture$$7$$);
2566 $JSCompiler_StaticMethods_attach$self$$.$keyDownKey_$ = $goog$events$listen$$($JSCompiler_StaticMethods_attach$self$$.$element_$, "keydown", $JSCompiler_StaticMethods_attach$self$$.$handleKeyDown_$, $opt_capture$$7$$, $JSCompiler_StaticMethods_attach$self$$);
2567 $JSCompiler_StaticMethods_attach$self$$.$keyUpKey_$ = $goog$events$listen$$($JSCompiler_StaticMethods_attach$self$$.$element_$, "keyup", $JSCompiler_StaticMethods_attach$self$$.$handleKeyup_$, $opt_capture$$7$$, $JSCompiler_StaticMethods_attach$self$$)
2568}
2569$JSCompiler_prototypeAlias$$.detach = function $$JSCompiler_prototypeAlias$$$detach$() {
2570 this.$keyPressKey_$ && ($goog$events$unlistenByKey$$(this.$keyPressKey_$), $goog$events$unlistenByKey$$(this.$keyDownKey_$), $goog$events$unlistenByKey$$(this.$keyUpKey_$), this.$keyUpKey_$ = this.$keyDownKey_$ = this.$keyPressKey_$ = $JSCompiler_alias_NULL$$);
2571 this.$element_$ = $JSCompiler_alias_NULL$$;
2572 this.$keyCode_$ = this.$lastKey_$ = -1
2573};
2574function $goog$events$KeyEvent$$($keyCode$$4$$, $charCode$$1$$, $repeat$$1$$, $browserEvent$$1$$) {
2575 $browserEvent$$1$$ && this.init($browserEvent$$1$$, $JSCompiler_alias_VOID$$);
2576 this.type = "key";
2577 this.keyCode = $keyCode$$4$$;
2578 this.charCode = $charCode$$1$$;
2579 this.repeat = $repeat$$1$$
2580}
2581$goog$inherits$$($goog$events$KeyEvent$$, $goog$events$BrowserEvent$$);
2582function $goog$ui$IdGenerator$$() {
2583}
2584$goog$addSingletonGetter$$($goog$ui$IdGenerator$$);
2585$goog$ui$IdGenerator$$.prototype.$nextId_$ = 0;
2586$goog$ui$IdGenerator$$.$getInstance$();
2587function $goog$ui$Component$$($opt_domHelper$$2$$) {
2588 $goog$Disposable$$.call(this);
2589 this.$dom_$ = $opt_domHelper$$2$$ || $goog$dom$getDomHelper$$();
2590 this.$rightToLeft_$ = $goog$ui$Component$defaultRightToLeft_$$
2591}
2592$goog$inherits$$($goog$ui$Component$$, $goog$events$EventTarget$$);
2593$goog$ui$Component$$.prototype.$idGenerator_$ = $goog$ui$IdGenerator$$.$getInstance$();
2594var $goog$ui$Component$defaultRightToLeft_$$ = $JSCompiler_alias_NULL$$;
2595function $goog$ui$Component$getStateTransitionEvent$$($state$$, $isEntering$$) {
2596 switch($state$$) {
2597 case 1:
2598 return $isEntering$$ ? "disable" : "enable";
2599 case 2:
2600 return $isEntering$$ ? "highlight" : "unhighlight";
2601 case 4:
2602 return $isEntering$$ ? "activate" : "deactivate";
2603 case 8:
2604 return $isEntering$$ ? "select" : "unselect";
2605 case 16:
2606 return $isEntering$$ ? "check" : "uncheck";
2607 case 32:
2608 return $isEntering$$ ? "focus" : "blur";
2609 case 64:
2610 return $isEntering$$ ? "open" : "close"
2611 }
2612 $JSCompiler_alias_THROW$$(Error("Invalid component state"))
2613}
2614$JSCompiler_prototypeAlias$$ = $goog$ui$Component$$.prototype;
2615$JSCompiler_prototypeAlias$$.$id_$ = $JSCompiler_alias_NULL$$;
2616$JSCompiler_prototypeAlias$$.$inDocument_$ = $JSCompiler_alias_FALSE$$;
2617$JSCompiler_prototypeAlias$$.$element_$ = $JSCompiler_alias_NULL$$;
2618$JSCompiler_prototypeAlias$$.$rightToLeft_$ = $JSCompiler_alias_NULL$$;
2619$JSCompiler_prototypeAlias$$.$parent_$ = $JSCompiler_alias_NULL$$;
2620$JSCompiler_prototypeAlias$$.$children_$ = $JSCompiler_alias_NULL$$;
2621$JSCompiler_prototypeAlias$$.$childIndex_$ = $JSCompiler_alias_NULL$$;
2622$JSCompiler_prototypeAlias$$.$wasDecorated_$ = $JSCompiler_alias_FALSE$$;
2623$JSCompiler_prototypeAlias$$.$getElement$ = $JSCompiler_get$$("$element_$");
2624$JSCompiler_prototypeAlias$$.$getHandler$ = function $$JSCompiler_prototypeAlias$$$$getHandler$$() {
2625 return this.$googUiComponentHandler_$ || (this.$googUiComponentHandler_$ = new $goog$events$EventHandler$$(this))
2626};
2627$JSCompiler_prototypeAlias$$.$setParentEventTarget$ = function $$JSCompiler_prototypeAlias$$$$setParentEventTarget$$($parent$$22$$) {
2628 this.$parent_$ && this.$parent_$ != $parent$$22$$ && $JSCompiler_alias_THROW$$(Error("Method not supported"));
2629 $goog$ui$Component$$.$superClass_$.$setParentEventTarget$.call(this, $parent$$22$$)
2630};
2631$JSCompiler_prototypeAlias$$.$getDomHelper$ = $JSCompiler_get$$("$dom_$");
2632$JSCompiler_prototypeAlias$$.$decorate$ = function $$JSCompiler_prototypeAlias$$$$decorate$$($element$$73$$) {
2633 this.$inDocument_$ && $JSCompiler_alias_THROW$$(Error("Component already rendered"));
2634 if($element$$73$$ && this.$canDecorate$($element$$73$$)) {
2635 this.$wasDecorated_$ = $JSCompiler_alias_TRUE$$;
2636 if(!this.$dom_$ || this.$dom_$.$document_$ != $goog$dom$getOwnerDocument$$($element$$73$$)) {
2637 this.$dom_$ = $goog$dom$getDomHelper$$($element$$73$$)
2638 }
2639 this.$decorateInternal$($element$$73$$);
2640 this.$enterDocument$()
2641 }else {
2642 $JSCompiler_alias_THROW$$(Error("Invalid element to decorate"))
2643 }
2644};
2645$JSCompiler_prototypeAlias$$.$canDecorate$ = $JSCompiler_returnArg$$($JSCompiler_alias_TRUE$$);
2646$JSCompiler_prototypeAlias$$.$decorateInternal$ = function $$JSCompiler_prototypeAlias$$$$decorateInternal$$($element$$75$$) {
2647 this.$element_$ = $element$$75$$
2648};
2649$JSCompiler_prototypeAlias$$.$enterDocument$ = function $$JSCompiler_prototypeAlias$$$$enterDocument$$() {
2650 function $f$$inline_522$$($child$$8$$) {
2651 !$child$$8$$.$inDocument_$ && $child$$8$$.$getElement$() && $child$$8$$.$enterDocument$()
2652 }
2653 this.$inDocument_$ = $JSCompiler_alias_TRUE$$;
2654 this.$children_$ && $goog$array$forEach$$(this.$children_$, $f$$inline_522$$, $JSCompiler_alias_VOID$$)
2655};
2656$JSCompiler_prototypeAlias$$.$exitDocument$ = function $$JSCompiler_prototypeAlias$$$$exitDocument$$() {
2657 function $f$$inline_526$$($child$$9$$) {
2658 $child$$9$$.$inDocument_$ && $child$$9$$.$exitDocument$()
2659 }
2660 this.$children_$ && $goog$array$forEach$$(this.$children_$, $f$$inline_526$$, $JSCompiler_alias_VOID$$);
2661 this.$googUiComponentHandler_$ && this.$googUiComponentHandler_$.$removeAll$();
2662 this.$inDocument_$ = $JSCompiler_alias_FALSE$$
2663};
2664$JSCompiler_prototypeAlias$$.$getContentElement$ = $JSCompiler_get$$("$element_$");
2665$JSCompiler_prototypeAlias$$.$setRightToLeft$ = function $$JSCompiler_prototypeAlias$$$$setRightToLeft$$($rightToLeft$$1$$) {
2666 this.$inDocument_$ && $JSCompiler_alias_THROW$$(Error("Component already rendered"));
2667 this.$rightToLeft_$ = $rightToLeft$$1$$
2668};
2669$JSCompiler_prototypeAlias$$.removeChild = function $$JSCompiler_prototypeAlias$$$removeChild$($child$$15$$, $opt_unrender$$) {
2670 if($child$$15$$) {
2671 var $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ = $goog$isString$$($child$$15$$) ? $child$$15$$ : $child$$15$$.$id_$ || ($child$$15$$.$id_$ = ":" + ($child$$15$$.$idGenerator_$.$nextId_$++).toString(36)), $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$;
2672 this.$childIndex_$ && $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ ? ($JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ = this.$childIndex_$, $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ = ($JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ in $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ ? $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$[$JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$] : $JSCompiler_alias_VOID$$) ||
2673 $JSCompiler_alias_NULL$$) : $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ = $JSCompiler_alias_NULL$$;
2674 $child$$15$$ = $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$;
2675 $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ && $child$$15$$ && ($JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ = this.$childIndex_$, $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ in $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ && delete $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$[$JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$], $goog$array$remove$$(this.$children_$, $child$$15$$), $opt_unrender$$ &&
2676 ($child$$15$$.$exitDocument$(), $child$$15$$.$element_$ && $goog$dom$removeNode$$($child$$15$$.$element_$)), $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ = $child$$15$$, $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ == $JSCompiler_alias_NULL$$ && $JSCompiler_alias_THROW$$(Error("Unable to set parent component")), $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$.$parent_$ = $JSCompiler_alias_NULL$$, $goog$ui$Component$$.$superClass_$.$setParentEventTarget$.call($JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$,
2677 $JSCompiler_alias_NULL$$))
2678 }
2679 $child$$15$$ || $JSCompiler_alias_THROW$$(Error("Child is not in parent component"));
2680 return $child$$15$$
2681};
2682function $goog$ui$ControlRenderer$$() {
2683}
2684var $goog$ui$ControlRenderer$ARIA_STATE_MAP_$$;
2685$goog$addSingletonGetter$$($goog$ui$ControlRenderer$$);
2686$JSCompiler_prototypeAlias$$ = $goog$ui$ControlRenderer$$.prototype;
2687$JSCompiler_prototypeAlias$$.$getContentElement$ = function $$JSCompiler_prototypeAlias$$$$getContentElement$$($element$$83$$) {
2688 return $element$$83$$
2689};
2690$JSCompiler_prototypeAlias$$.$enableClassName$ = function $$JSCompiler_prototypeAlias$$$$enableClassName$$($control$$1_element$$84$$, $className$$16$$, $enable$$1$$) {
2691 if($control$$1_element$$84$$ = $control$$1_element$$84$$.$getElement$ ? $control$$1_element$$84$$.$getElement$() : $control$$1_element$$84$$) {
2692 if($goog$userAgent$IE$$ && !$goog$userAgent$isVersion$$("7")) {
2693 var $combinedClasses$$ = $JSCompiler_StaticMethods_getAppliedCombinedClassNames_$$($goog$dom$classes$get$$($control$$1_element$$84$$), $className$$16$$);
2694 $combinedClasses$$.push($className$$16$$);
2695 $goog$partial$$($enable$$1$$ ? $goog$dom$classes$add$$ : $goog$dom$classes$remove$$, $control$$1_element$$84$$).apply($JSCompiler_alias_NULL$$, $combinedClasses$$)
2696 }else {
2697 $enable$$1$$ ? $goog$dom$classes$add$$($control$$1_element$$84$$, $className$$16$$) : $goog$dom$classes$remove$$($control$$1_element$$84$$, $className$$16$$)
2698 }
2699 }
2700};
2701$JSCompiler_prototypeAlias$$.$canDecorate$ = $JSCompiler_returnArg$$($JSCompiler_alias_TRUE$$);
2702$JSCompiler_prototypeAlias$$.$decorate$ = function $$JSCompiler_prototypeAlias$$$$decorate$$($control$$3$$, $element$$86$$) {
2703 if($element$$86$$.id) {
2704 var $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ = $element$$86$$.id;
2705 if($control$$3$$.$parent_$ && $control$$3$$.$parent_$.$childIndex_$) {
2706 var $classNames$$1_obj$$inline_868_obj$$inline_871$$ = $control$$3$$.$parent_$.$childIndex_$, $extraClassNames_key$$inline_869$$ = $control$$3$$.$id_$;
2707 $extraClassNames_key$$inline_869$$ in $classNames$$1_obj$$inline_868_obj$$inline_871$$ && delete $classNames$$1_obj$$inline_868_obj$$inline_871$$[$extraClassNames_key$$inline_869$$];
2708 $classNames$$1_obj$$inline_868_obj$$inline_871$$ = $control$$3$$.$parent_$.$childIndex_$;
2709 $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ in $classNames$$1_obj$$inline_868_obj$$inline_871$$ && $JSCompiler_alias_THROW$$(Error('The object already contains the key "' + $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ + '"'));
2710 $classNames$$1_obj$$inline_868_obj$$inline_871$$[$content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$] = $control$$3$$
2711 }
2712 $control$$3$$.$id_$ = $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$
2713 }
2714 ($content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ = this.$getContentElement$($element$$86$$)) && $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$.firstChild ? ($content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ = $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$.firstChild.nextSibling ? $goog$array$toArray$$($content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$.childNodes) : $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$.firstChild,
2715 $control$$3$$.$content_$ = $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$) : $control$$3$$.$content_$ = $JSCompiler_alias_NULL$$;
2716 var $state$$2$$ = 0, $rendererClassName$$ = this.$getCssClass$(), $structuralClassName$$ = this.$getCssClass$(), $hasRendererClassName$$ = $JSCompiler_alias_FALSE$$, $hasStructuralClassName$$ = $JSCompiler_alias_FALSE$$, $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ = $JSCompiler_alias_FALSE$$, $classNames$$1_obj$$inline_868_obj$$inline_871$$ = $goog$dom$classes$get$$($element$$86$$);
2717 $goog$array$forEach$$($classNames$$1_obj$$inline_868_obj$$inline_871$$, function($className$$18_state$$inline_551$$) {
2718 if(!$hasRendererClassName$$ && $className$$18_state$$inline_551$$ == $rendererClassName$$) {
2719 $hasRendererClassName$$ = $JSCompiler_alias_TRUE$$, $structuralClassName$$ == $rendererClassName$$ && ($hasStructuralClassName$$ = $JSCompiler_alias_TRUE$$)
2720 }else {
2721 if(!$hasStructuralClassName$$ && $className$$18_state$$inline_551$$ == $structuralClassName$$) {
2722 $hasStructuralClassName$$ = $JSCompiler_alias_TRUE$$
2723 }else {
2724 var $JSCompiler_temp_const$$31$$ = $state$$2$$;
2725 if(!this.$stateByClass_$) {
2726 this.$classByState_$ || $JSCompiler_StaticMethods_createClassByStateMap_$$(this);
2727 var $obj$$inline_908$$ = this.$classByState_$, $transposed$$inline_909$$ = {}, $key$$inline_910$$;
2728 for($key$$inline_910$$ in $obj$$inline_908$$) {
2729 $transposed$$inline_909$$[$obj$$inline_908$$[$key$$inline_910$$]] = $key$$inline_910$$
2730 }
2731 this.$stateByClass_$ = $transposed$$inline_909$$
2732 }
2733 $className$$18_state$$inline_551$$ = parseInt(this.$stateByClass_$[$className$$18_state$$inline_551$$], 10);
2734 $state$$2$$ = $JSCompiler_temp_const$$31$$ | (isNaN($className$$18_state$$inline_551$$) ? 0 : $className$$18_state$$inline_551$$)
2735 }
2736 }
2737 }, this);
2738 $control$$3$$.$state_$ = $state$$2$$;
2739 $hasRendererClassName$$ || ($classNames$$1_obj$$inline_868_obj$$inline_871$$.push($rendererClassName$$), $structuralClassName$$ == $rendererClassName$$ && ($hasStructuralClassName$$ = $JSCompiler_alias_TRUE$$));
2740 $hasStructuralClassName$$ || $classNames$$1_obj$$inline_868_obj$$inline_871$$.push($structuralClassName$$);
2741 ($extraClassNames_key$$inline_869$$ = $control$$3$$.$extraClassNames_$) && $classNames$$1_obj$$inline_868_obj$$inline_871$$.push.apply($classNames$$1_obj$$inline_868_obj$$inline_871$$, $extraClassNames_key$$inline_869$$);
2742 if($goog$userAgent$IE$$ && !$goog$userAgent$isVersion$$("7")) {
2743 var $combinedClasses$$1$$ = $JSCompiler_StaticMethods_getAppliedCombinedClassNames_$$($classNames$$1_obj$$inline_868_obj$$inline_871$$);
2744 0 < $combinedClasses$$1$$.length && ($classNames$$1_obj$$inline_868_obj$$inline_871$$.push.apply($classNames$$1_obj$$inline_868_obj$$inline_871$$, $combinedClasses$$1$$), $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ = $JSCompiler_alias_TRUE$$)
2745 }
2746 if(!$hasRendererClassName$$ || !$hasStructuralClassName$$ || $extraClassNames_key$$inline_869$$ || $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$) {
2747 $element$$86$$.className = $classNames$$1_obj$$inline_868_obj$$inline_871$$.join(" ")
2748 }
2749 $control$$3$$.isEnabled() || this.$updateAriaState$($element$$86$$, 1, $JSCompiler_alias_TRUE$$);
2750 $control$$3$$.$state_$ & 8 && this.$updateAriaState$($element$$86$$, 8, $JSCompiler_alias_TRUE$$);
2751 $control$$3$$.$supportedStates_$ & 16 && this.$updateAriaState$($element$$86$$, 16, !!($control$$3$$.$state_$ & 16));
2752 $control$$3$$.$supportedStates_$ & 64 && this.$updateAriaState$($element$$86$$, 64, !!($control$$3$$.$state_$ & 64));
2753 return $element$$86$$
2754};
2755$JSCompiler_prototypeAlias$$.$setAllowTextSelection$ = function $$JSCompiler_prototypeAlias$$$$setAllowTextSelection$$($element$$89$$, $allow$$) {
2756 var $unselectable$$inline_564_value$$inline_567$$ = !$allow$$, $descendants$$inline_566$$ = $goog$userAgent$IE$$ || $goog$userAgent$OPERA$$ ? $element$$89$$.getElementsByTagName("*") : $JSCompiler_alias_NULL$$;
2757 if($goog$style$unselectableStyle_$$) {
2758 if($unselectable$$inline_564_value$$inline_567$$ = $unselectable$$inline_564_value$$inline_567$$ ? "none" : "", $element$$89$$.style[$goog$style$unselectableStyle_$$] = $unselectable$$inline_564_value$$inline_567$$, $descendants$$inline_566$$) {
2759 for(var $i$$inline_568$$ = 0, $descendant$$inline_569$$;$descendant$$inline_569$$ = $descendants$$inline_566$$[$i$$inline_568$$];$i$$inline_568$$++) {
2760 $descendant$$inline_569$$.style[$goog$style$unselectableStyle_$$] = $unselectable$$inline_564_value$$inline_567$$
2761 }
2762 }
2763 }else {
2764 if($goog$userAgent$IE$$ || $goog$userAgent$OPERA$$) {
2765 if($unselectable$$inline_564_value$$inline_567$$ = $unselectable$$inline_564_value$$inline_567$$ ? "on" : "", $element$$89$$.setAttribute("unselectable", $unselectable$$inline_564_value$$inline_567$$), $descendants$$inline_566$$) {
2766 for($i$$inline_568$$ = 0;$descendant$$inline_569$$ = $descendants$$inline_566$$[$i$$inline_568$$];$i$$inline_568$$++) {
2767 $descendant$$inline_569$$.setAttribute("unselectable", $unselectable$$inline_564_value$$inline_567$$)
2768 }
2769 }
2770 }
2771 }
2772};
2773$JSCompiler_prototypeAlias$$.$setRightToLeft$ = function $$JSCompiler_prototypeAlias$$$$setRightToLeft$$($element$$90$$, $rightToLeft$$2$$) {
2774 this.$enableClassName$($element$$90$$, this.$getCssClass$() + "-rtl", $rightToLeft$$2$$)
2775};
2776$JSCompiler_prototypeAlias$$.$isFocusable$ = function $$JSCompiler_prototypeAlias$$$$isFocusable$$($control$$6$$) {
2777 var $keyTarget$$;
2778 return $control$$6$$.$supportedStates_$ & 32 && ($keyTarget$$ = $control$$6$$.$getKeyEventTarget$()) ? $goog$dom$isFocusableTabIndex$$($keyTarget$$) : $JSCompiler_alias_FALSE$$
2779};
2780$JSCompiler_prototypeAlias$$.$setFocusable$ = function $$JSCompiler_prototypeAlias$$$$setFocusable$$($control$$7$$, $focusable$$) {
2781 var $element$$inline_571_keyTarget$$1$$;
2782 if($control$$7$$.$supportedStates_$ & 32 && ($element$$inline_571_keyTarget$$1$$ = $control$$7$$.$getKeyEventTarget$())) {
2783 if(!$focusable$$ && $control$$7$$.$state_$ & 32) {
2784 try {
2785 $element$$inline_571_keyTarget$$1$$.blur()
2786 }catch($e$$39$$) {
2787 }
2788 $control$$7$$.$state_$ & 32 && $control$$7$$.$handleBlur$()
2789 }
2790 $goog$dom$isFocusableTabIndex$$($element$$inline_571_keyTarget$$1$$) != $focusable$$ && ($focusable$$ ? $element$$inline_571_keyTarget$$1$$.tabIndex = 0 : ($element$$inline_571_keyTarget$$1$$.tabIndex = -1, $element$$inline_571_keyTarget$$1$$.removeAttribute("tabIndex")))
2791 }
2792};
2793$JSCompiler_prototypeAlias$$.$setState$ = function $$JSCompiler_prototypeAlias$$$$setState$$($control$$8$$, $state$$3$$, $enable$$3$$) {
2794 var $element$$92$$ = $control$$8$$.$getElement$();
2795 if($element$$92$$) {
2796 var $className$$19$$;
2797 this.$classByState_$ || $JSCompiler_StaticMethods_createClassByStateMap_$$(this);
2798 ($className$$19$$ = this.$classByState_$[$state$$3$$]) && this.$enableClassName$($control$$8$$, $className$$19$$, $enable$$3$$);
2799 this.$updateAriaState$($element$$92$$, $state$$3$$, $enable$$3$$)
2800 }
2801};
2802$JSCompiler_prototypeAlias$$.$updateAriaState$ = function $$JSCompiler_prototypeAlias$$$$updateAriaState$$($element$$93$$, $ariaState_state$$4$$, $enable$$4$$) {
2803 $goog$ui$ControlRenderer$ARIA_STATE_MAP_$$ || ($goog$ui$ControlRenderer$ARIA_STATE_MAP_$$ = {1:"disabled", 8:"selected", 16:"checked", 64:"expanded"});
2804 ($ariaState_state$$4$$ = $goog$ui$ControlRenderer$ARIA_STATE_MAP_$$[$ariaState_state$$4$$]) && $element$$93$$.setAttribute("aria-" + $ariaState_state$$4$$, $enable$$4$$)
2805};
2806$JSCompiler_prototypeAlias$$.$setContent$ = function $$JSCompiler_prototypeAlias$$$$setContent$$($element$$94$$, $content$$2$$) {
2807 var $contentElem$$1$$ = this.$getContentElement$($element$$94$$);
2808 if($contentElem$$1$$ && ($goog$dom$removeChildren$$($contentElem$$1$$), $content$$2$$)) {
2809 if($goog$isString$$($content$$2$$)) {
2810 if("textContent" in $contentElem$$1$$) {
2811 $contentElem$$1$$.textContent = $content$$2$$
2812 }else {
2813 if($contentElem$$1$$.firstChild && 3 == $contentElem$$1$$.firstChild.nodeType) {
2814 for(;$contentElem$$1$$.lastChild != $contentElem$$1$$.firstChild;) {
2815 $contentElem$$1$$.removeChild($contentElem$$1$$.lastChild)
2816 }
2817 $contentElem$$1$$.firstChild.data = $content$$2$$
2818 }else {
2819 $goog$dom$removeChildren$$($contentElem$$1$$), $contentElem$$1$$.appendChild($goog$dom$getOwnerDocument$$($contentElem$$1$$).createTextNode($content$$2$$))
2820 }
2821 }
2822 }else {
2823 var $childHandler$$1$$ = function $$childHandler$$1$$$($child$$16$$) {
2824 if($child$$16$$) {
2825 var $doc$$34$$ = $goog$dom$getOwnerDocument$$($contentElem$$1$$);
2826 $contentElem$$1$$.appendChild($goog$isString$$($child$$16$$) ? $doc$$34$$.createTextNode($child$$16$$) : $child$$16$$)
2827 }
2828 };
2829 $goog$isArray$$($content$$2$$) ? $goog$array$forEach$$($content$$2$$, $childHandler$$1$$) : $goog$isArrayLike$$($content$$2$$) && !("nodeType" in $content$$2$$) ? $goog$array$forEach$$($goog$array$toArray$$($content$$2$$), $childHandler$$1$$) : $childHandler$$1$$($content$$2$$)
2830 }
2831 }
2832};
2833$JSCompiler_prototypeAlias$$.$getKeyEventTarget$ = function $$JSCompiler_prototypeAlias$$$$getKeyEventTarget$$($control$$9$$) {
2834 return $control$$9$$.$getElement$()
2835};
2836$JSCompiler_prototypeAlias$$.$getCssClass$ = $JSCompiler_returnArg$$("goog-control");
2837function $JSCompiler_StaticMethods_getAppliedCombinedClassNames_$$($classes$$5$$, $opt_includedClass$$) {
2838 var $toAdd$$ = [];
2839 $opt_includedClass$$ && ($classes$$5$$ = $classes$$5$$.concat([$opt_includedClass$$]));
2840 $goog$array$forEach$$([], function($combo$$) {
2841 $goog$array$every$$($combo$$, $goog$partial$$($goog$array$contains$$, $classes$$5$$)) && (!$opt_includedClass$$ || $goog$array$contains$$($combo$$, $opt_includedClass$$)) && $toAdd$$.push($combo$$.join("_"))
2842 });
2843 return $toAdd$$
2844}
2845function $JSCompiler_StaticMethods_createClassByStateMap_$$($JSCompiler_StaticMethods_createClassByStateMap_$self$$) {
2846 var $baseClass$$ = $JSCompiler_StaticMethods_createClassByStateMap_$self$$.$getCssClass$();
2847 $JSCompiler_StaticMethods_createClassByStateMap_$self$$.$classByState_$ = {1:$baseClass$$ + "-disabled", 2:$baseClass$$ + "-hover", 4:$baseClass$$ + "-active", 8:$baseClass$$ + "-selected", 16:$baseClass$$ + "-checked", 32:$baseClass$$ + "-focused", 64:$baseClass$$ + "-open"}
2848}
2849;var $goog$ui$registry$defaultRenderers_$$ = {};
2850function $goog$ui$Control$$($content$$3$$, $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$, $opt_domHelper$$3$$) {
2851 $goog$ui$Component$$.call(this, $opt_domHelper$$3$$);
2852 if(!$JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$) {
2853 for(var $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$ = this.constructor, $key$$inline_585_rendererCtor$$inline_586$$;$JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$;) {
2854 $key$$inline_585_rendererCtor$$inline_586$$ = $goog$getUid$$($JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$);
2855 if($key$$inline_585_rendererCtor$$inline_586$$ = $goog$ui$registry$defaultRenderers_$$[$key$$inline_585_rendererCtor$$inline_586$$]) {
2856 break
2857 }
2858 $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$ = $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$.$superClass_$ ? $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$.$superClass_$.constructor : $JSCompiler_alias_NULL$$
2859 }
2860 $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$ = $key$$inline_585_rendererCtor$$inline_586$$ ? $goog$isFunction$$($key$$inline_585_rendererCtor$$inline_586$$.$getInstance$) ? $key$$inline_585_rendererCtor$$inline_586$$.$getInstance$() : new $key$$inline_585_rendererCtor$$inline_586$$ : $JSCompiler_alias_NULL$$
2861 }
2862 this.$renderer_$ = $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$;
2863 this.$content_$ = $content$$3$$
2864}
2865$goog$inherits$$($goog$ui$Control$$, $goog$ui$Component$$);
2866$JSCompiler_prototypeAlias$$ = $goog$ui$Control$$.prototype;
2867$JSCompiler_prototypeAlias$$.$content_$ = $JSCompiler_alias_NULL$$;
2868$JSCompiler_prototypeAlias$$.$state_$ = 0;
2869$JSCompiler_prototypeAlias$$.$supportedStates_$ = 39;
2870$JSCompiler_prototypeAlias$$.$autoStates_$ = 255;
2871$JSCompiler_prototypeAlias$$.$statesWithTransitionEvents_$ = 0;
2872$JSCompiler_prototypeAlias$$.$visible_$ = $JSCompiler_alias_TRUE$$;
2873$JSCompiler_prototypeAlias$$.$extraClassNames_$ = $JSCompiler_alias_NULL$$;
2874$JSCompiler_prototypeAlias$$.$handleMouseEvents_$ = $JSCompiler_alias_TRUE$$;
2875$JSCompiler_prototypeAlias$$.$allowTextSelection_$ = $JSCompiler_alias_FALSE$$;
2876$JSCompiler_prototypeAlias$$.$preferredAriaRole_$ = $JSCompiler_alias_NULL$$;
2877function $JSCompiler_StaticMethods_setHandleMouseEvents$$($JSCompiler_StaticMethods_setHandleMouseEvents$self$$) {
2878 $JSCompiler_StaticMethods_setHandleMouseEvents$self$$.$inDocument_$ && $JSCompiler_alias_FALSE$$ != $JSCompiler_StaticMethods_setHandleMouseEvents$self$$.$handleMouseEvents_$ && $JSCompiler_StaticMethods_enableMouseEventHandling_$$($JSCompiler_StaticMethods_setHandleMouseEvents$self$$, $JSCompiler_alias_FALSE$$);
2879 $JSCompiler_StaticMethods_setHandleMouseEvents$self$$.$handleMouseEvents_$ = $JSCompiler_alias_FALSE$$
2880}
2881$JSCompiler_prototypeAlias$$.$getKeyEventTarget$ = function $$JSCompiler_prototypeAlias$$$$getKeyEventTarget$$() {
2882 return this.$renderer_$.$getKeyEventTarget$(this)
2883};
2884$JSCompiler_prototypeAlias$$.$enableClassName$ = function $$JSCompiler_prototypeAlias$$$$enableClassName$$($className$$25$$, $enable$$6$$) {
2885 $enable$$6$$ ? $className$$25$$ && (this.$extraClassNames_$ ? $goog$array$contains$$(this.$extraClassNames_$, $className$$25$$) || this.$extraClassNames_$.push($className$$25$$) : this.$extraClassNames_$ = [$className$$25$$], this.$renderer_$.$enableClassName$(this, $className$$25$$, $JSCompiler_alias_TRUE$$)) : $className$$25$$ && this.$extraClassNames_$ && ($goog$array$remove$$(this.$extraClassNames_$, $className$$25$$), 0 == this.$extraClassNames_$.length && (this.$extraClassNames_$ = $JSCompiler_alias_NULL$$),
2886 this.$renderer_$.$enableClassName$(this, $className$$25$$, $JSCompiler_alias_FALSE$$))
2887};
2888$JSCompiler_prototypeAlias$$.$getContentElement$ = function $$JSCompiler_prototypeAlias$$$$getContentElement$$() {
2889 return this.$renderer_$.$getContentElement$(this.$getElement$())
2890};
2891$JSCompiler_prototypeAlias$$.$canDecorate$ = function $$JSCompiler_prototypeAlias$$$$canDecorate$$($element$$98$$) {
2892 return this.$renderer_$.$canDecorate$($element$$98$$)
2893};
2894$JSCompiler_prototypeAlias$$.$decorateInternal$ = function $$JSCompiler_prototypeAlias$$$$decorateInternal$$($element$$99$$) {
2895 this.$element_$ = $element$$99$$ = this.$renderer_$.$decorate$(this, $element$$99$$);
2896 var $ariaRole$$inline_612$$ = this.$preferredAriaRole_$ || $JSCompiler_alias_VOID$$;
2897 $ariaRole$$inline_612$$ && $element$$99$$.setAttribute("role", $ariaRole$$inline_612$$);
2898 this.$allowTextSelection_$ || this.$renderer_$.$setAllowTextSelection$($element$$99$$, $JSCompiler_alias_FALSE$$);
2899 this.$visible_$ = "none" != $element$$99$$.style.display
2900};
2901$JSCompiler_prototypeAlias$$.$enterDocument$ = function $$JSCompiler_prototypeAlias$$$$enterDocument$$() {
2902 $goog$ui$Control$$.$superClass_$.$enterDocument$.call(this);
2903 var $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$ = this.$renderer_$;
2904 this.$rightToLeft_$ == $JSCompiler_alias_NULL$$ && (this.$rightToLeft_$ = $goog$style$isRightToLeft$$(this.$inDocument_$ ? this.$element_$ : this.$dom_$.$document_$.body));
2905 this.$rightToLeft_$ && $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$.$setRightToLeft$(this.$getElement$(), $JSCompiler_alias_TRUE$$);
2906 this.isEnabled() && $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$.$setFocusable$(this, this.$visible_$);
2907 if(this.$supportedStates_$ & -2 && (this.$handleMouseEvents_$ && $JSCompiler_StaticMethods_enableMouseEventHandling_$$(this, $JSCompiler_alias_TRUE$$), this.$supportedStates_$ & 32 && ($JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$ = this.$getKeyEventTarget$()))) {
2908 var $keyHandler$$ = this.$keyHandler_$ || (this.$keyHandler_$ = new $goog$events$KeyHandler$$);
2909 $JSCompiler_StaticMethods_attach$$($keyHandler$$, $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$);
2910 $JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$(this.$getHandler$(), $keyHandler$$, "key", this.$handleKeyEvent$), $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$, "focus", this.$handleFocus$), $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$, "blur", this.$handleBlur$)
2911 }
2912};
2913function $JSCompiler_StaticMethods_enableMouseEventHandling_$$($JSCompiler_StaticMethods_enableMouseEventHandling_$self$$, $enable$$7$$) {
2914 var $handler$$11$$ = $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$getHandler$(), $element$$100$$ = $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$getElement$();
2915 $enable$$7$$ ? ($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($handler$$11$$, $element$$100$$, "mouseover", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseOver$), $element$$100$$, "mousedown", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseDown$), $element$$100$$, "mouseup", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseUp$), $element$$100$$,
2916 "mouseout", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseOut$), $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleContextMenu$ != $goog$nullFunction$$ && $JSCompiler_StaticMethods_listen$$($handler$$11$$, $element$$100$$, "contextmenu", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleContextMenu$), $goog$userAgent$IE$$ && $JSCompiler_StaticMethods_listen$$($handler$$11$$, $element$$100$$, "dblclick", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleDblClick$)) :
2917 ($JSCompiler_StaticMethods_unlisten$$($JSCompiler_StaticMethods_unlisten$$($JSCompiler_StaticMethods_unlisten$$($JSCompiler_StaticMethods_unlisten$$($handler$$11$$, $element$$100$$, "mouseover", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseOver$), $element$$100$$, "mousedown", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseDown$), $element$$100$$, "mouseup", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseUp$), $element$$100$$,
2918 "mouseout", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseOut$), $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleContextMenu$ != $goog$nullFunction$$ && $JSCompiler_StaticMethods_unlisten$$($handler$$11$$, $element$$100$$, "contextmenu", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleContextMenu$), $goog$userAgent$IE$$ && $JSCompiler_StaticMethods_unlisten$$($handler$$11$$, $element$$100$$, "dblclick", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleDblClick$))
2919}
2920$JSCompiler_prototypeAlias$$.$exitDocument$ = function $$JSCompiler_prototypeAlias$$$$exitDocument$$() {
2921 $goog$ui$Control$$.$superClass_$.$exitDocument$.call(this);
2922 this.$keyHandler_$ && this.$keyHandler_$.detach();
2923 this.$visible_$ && this.isEnabled() && this.$renderer_$.$setFocusable$(this, $JSCompiler_alias_FALSE$$)
2924};
2925$JSCompiler_prototypeAlias$$.$setContent$ = function $$JSCompiler_prototypeAlias$$$$setContent$$($content$$4$$) {
2926 this.$renderer_$.$setContent$(this.$getElement$(), $content$$4$$);
2927 this.$content_$ = $content$$4$$
2928};
2929$JSCompiler_prototypeAlias$$.$setRightToLeft$ = function $$JSCompiler_prototypeAlias$$$$setRightToLeft$$($rightToLeft$$3$$) {
2930 $goog$ui$Control$$.$superClass_$.$setRightToLeft$.call(this, $rightToLeft$$3$$);
2931 var $element$$101$$ = this.$getElement$();
2932 $element$$101$$ && this.$renderer_$.$setRightToLeft$($element$$101$$, $rightToLeft$$3$$)
2933};
2934$JSCompiler_prototypeAlias$$.$setAllowTextSelection$ = function $$JSCompiler_prototypeAlias$$$$setAllowTextSelection$$($allow$$1$$) {
2935 this.$allowTextSelection_$ = $allow$$1$$;
2936 var $element$$102$$ = this.$getElement$();
2937 $element$$102$$ && this.$renderer_$.$setAllowTextSelection$($element$$102$$, $allow$$1$$)
2938};
2939$JSCompiler_prototypeAlias$$.isEnabled = function $$JSCompiler_prototypeAlias$$$isEnabled$() {
2940 return!(this.$state_$ & 1)
2941};
2942function $JSCompiler_StaticMethods_setHighlighted$$($JSCompiler_StaticMethods_setHighlighted$self$$, $highlight$$) {
2943 $JSCompiler_StaticMethods_isTransitionAllowed$$($JSCompiler_StaticMethods_setHighlighted$self$$, 2, $highlight$$) && $JSCompiler_StaticMethods_setHighlighted$self$$.$setState$(2, $highlight$$)
2944}
2945$JSCompiler_prototypeAlias$$.setActive = function $$JSCompiler_prototypeAlias$$$setActive$($active$$) {
2946 $JSCompiler_StaticMethods_isTransitionAllowed$$(this, 4, $active$$) && this.$setState$(4, $active$$)
2947};
2948$JSCompiler_prototypeAlias$$.$setState$ = function $$JSCompiler_prototypeAlias$$$$setState$$($state$$9$$, $enable$$9$$) {
2949 this.$supportedStates_$ & $state$$9$$ && $enable$$9$$ != !!(this.$state_$ & $state$$9$$) && (this.$renderer_$.$setState$(this, $state$$9$$, $enable$$9$$), this.$state_$ = $enable$$9$$ ? this.$state_$ | $state$$9$$ : this.$state_$ & ~$state$$9$$)
2950};
2951function $JSCompiler_StaticMethods_isAutoState$$($JSCompiler_StaticMethods_isAutoState$self$$, $state$$13$$) {
2952 return!!($JSCompiler_StaticMethods_isAutoState$self$$.$autoStates_$ & $state$$13$$) && !!($JSCompiler_StaticMethods_isAutoState$self$$.$supportedStates_$ & $state$$13$$)
2953}
2954function $JSCompiler_StaticMethods_isTransitionAllowed$$($JSCompiler_StaticMethods_isTransitionAllowed$self$$, $state$$15$$, $enable$$12$$) {
2955 return!!($JSCompiler_StaticMethods_isTransitionAllowed$self$$.$supportedStates_$ & $state$$15$$) && !!($JSCompiler_StaticMethods_isTransitionAllowed$self$$.$state_$ & $state$$15$$) != $enable$$12$$ && (!($JSCompiler_StaticMethods_isTransitionAllowed$self$$.$statesWithTransitionEvents_$ & $state$$15$$) || $JSCompiler_StaticMethods_isTransitionAllowed$self$$.dispatchEvent($goog$ui$Component$getStateTransitionEvent$$($state$$15$$, $enable$$12$$))) && !$JSCompiler_StaticMethods_isTransitionAllowed$self$$.$disposed_$
2956}
2957$JSCompiler_prototypeAlias$$.$handleMouseOver$ = function $$JSCompiler_prototypeAlias$$$$handleMouseOver$$($e$$40$$) {
2958 (!$e$$40$$.relatedTarget || !$goog$dom$contains$$(this.$getElement$(), $e$$40$$.relatedTarget)) && (this.dispatchEvent("enter") && this.isEnabled() && $JSCompiler_StaticMethods_isAutoState$$(this, 2)) && $JSCompiler_StaticMethods_setHighlighted$$(this, $JSCompiler_alias_TRUE$$)
2959};
2960$JSCompiler_prototypeAlias$$.$handleMouseOut$ = function $$JSCompiler_prototypeAlias$$$$handleMouseOut$$($e$$41$$) {
2961 if((!$e$$41$$.relatedTarget || !$goog$dom$contains$$(this.$getElement$(), $e$$41$$.relatedTarget)) && this.dispatchEvent("leave")) {
2962 $JSCompiler_StaticMethods_isAutoState$$(this, 4) && this.setActive($JSCompiler_alias_FALSE$$), $JSCompiler_StaticMethods_isAutoState$$(this, 2) && $JSCompiler_StaticMethods_setHighlighted$$(this, $JSCompiler_alias_FALSE$$)
2963 }
2964};
2965$JSCompiler_prototypeAlias$$.$handleContextMenu$ = $goog$nullFunction$$;
2966$JSCompiler_prototypeAlias$$.$handleMouseDown$ = function $$JSCompiler_prototypeAlias$$$$handleMouseDown$$($e$$43$$) {
2967 this.isEnabled() && ($JSCompiler_StaticMethods_isAutoState$$(this, 2) && $JSCompiler_StaticMethods_setHighlighted$$(this, $JSCompiler_alias_TRUE$$), $JSCompiler_StaticMethods_isMouseActionButton$$($e$$43$$) && ($JSCompiler_StaticMethods_isAutoState$$(this, 4) && this.setActive($JSCompiler_alias_TRUE$$), this.$renderer_$.$isFocusable$(this) && this.$getKeyEventTarget$().focus()));
2968 !this.$allowTextSelection_$ && $JSCompiler_StaticMethods_isMouseActionButton$$($e$$43$$) && $e$$43$$.preventDefault()
2969};
2970$JSCompiler_prototypeAlias$$.$handleMouseUp$ = function $$JSCompiler_prototypeAlias$$$$handleMouseUp$$($e$$44$$) {
2971 this.isEnabled() && ($JSCompiler_StaticMethods_isAutoState$$(this, 2) && $JSCompiler_StaticMethods_setHighlighted$$(this, $JSCompiler_alias_TRUE$$), this.$state_$ & 4 && ($JSCompiler_StaticMethods_performActionInternal$$(this, $e$$44$$) && $JSCompiler_StaticMethods_isAutoState$$(this, 4)) && this.setActive($JSCompiler_alias_FALSE$$))
2972};
2973$JSCompiler_prototypeAlias$$.$handleDblClick$ = function $$JSCompiler_prototypeAlias$$$$handleDblClick$$($e$$45$$) {
2974 this.isEnabled() && $JSCompiler_StaticMethods_performActionInternal$$(this, $e$$45$$)
2975};
2976function $JSCompiler_StaticMethods_performActionInternal$$($JSCompiler_StaticMethods_performActionInternal$self$$, $e$$46$$) {
2977 if($JSCompiler_StaticMethods_isAutoState$$($JSCompiler_StaticMethods_performActionInternal$self$$, 16)) {
2978 var $actionEvent_check$$inline_621_open$$inline_627$$ = !($JSCompiler_StaticMethods_performActionInternal$self$$.$state_$ & 16);
2979 $JSCompiler_StaticMethods_isTransitionAllowed$$($JSCompiler_StaticMethods_performActionInternal$self$$, 16, $actionEvent_check$$inline_621_open$$inline_627$$) && $JSCompiler_StaticMethods_performActionInternal$self$$.$setState$(16, $actionEvent_check$$inline_621_open$$inline_627$$)
2980 }
2981 $JSCompiler_StaticMethods_isAutoState$$($JSCompiler_StaticMethods_performActionInternal$self$$, 8) && $JSCompiler_StaticMethods_isTransitionAllowed$$($JSCompiler_StaticMethods_performActionInternal$self$$, 8, $JSCompiler_alias_TRUE$$) && $JSCompiler_StaticMethods_performActionInternal$self$$.$setState$(8, $JSCompiler_alias_TRUE$$);
2982 $JSCompiler_StaticMethods_isAutoState$$($JSCompiler_StaticMethods_performActionInternal$self$$, 64) && ($actionEvent_check$$inline_621_open$$inline_627$$ = !($JSCompiler_StaticMethods_performActionInternal$self$$.$state_$ & 64), $JSCompiler_StaticMethods_isTransitionAllowed$$($JSCompiler_StaticMethods_performActionInternal$self$$, 64, $actionEvent_check$$inline_621_open$$inline_627$$) && $JSCompiler_StaticMethods_performActionInternal$self$$.$setState$(64, $actionEvent_check$$inline_621_open$$inline_627$$));
2983 $actionEvent_check$$inline_621_open$$inline_627$$ = new $goog$events$Event$$("action", $JSCompiler_StaticMethods_performActionInternal$self$$);
2984 $e$$46$$ && ($actionEvent_check$$inline_621_open$$inline_627$$.altKey = $e$$46$$.altKey, $actionEvent_check$$inline_621_open$$inline_627$$.ctrlKey = $e$$46$$.ctrlKey, $actionEvent_check$$inline_621_open$$inline_627$$.metaKey = $e$$46$$.metaKey, $actionEvent_check$$inline_621_open$$inline_627$$.shiftKey = $e$$46$$.shiftKey, $actionEvent_check$$inline_621_open$$inline_627$$.$platformModifierKey$ = $e$$46$$.$platformModifierKey$);
2985 return $JSCompiler_StaticMethods_performActionInternal$self$$.dispatchEvent($actionEvent_check$$inline_621_open$$inline_627$$)
2986}
2987$JSCompiler_prototypeAlias$$.$handleFocus$ = function $$JSCompiler_prototypeAlias$$$$handleFocus$$() {
2988 $JSCompiler_StaticMethods_isAutoState$$(this, 32) && $JSCompiler_StaticMethods_isTransitionAllowed$$(this, 32, $JSCompiler_alias_TRUE$$) && this.$setState$(32, $JSCompiler_alias_TRUE$$)
2989};
2990$JSCompiler_prototypeAlias$$.$handleBlur$ = function $$JSCompiler_prototypeAlias$$$$handleBlur$$() {
2991 $JSCompiler_StaticMethods_isAutoState$$(this, 4) && this.setActive($JSCompiler_alias_FALSE$$);
2992 $JSCompiler_StaticMethods_isAutoState$$(this, 32) && $JSCompiler_StaticMethods_isTransitionAllowed$$(this, 32, $JSCompiler_alias_FALSE$$) && this.$setState$(32, $JSCompiler_alias_FALSE$$)
2993};
2994$JSCompiler_prototypeAlias$$.$handleKeyEvent$ = function $$JSCompiler_prototypeAlias$$$$handleKeyEvent$$($e$$49$$) {
2995 return this.$visible_$ && this.isEnabled() && 13 == $e$$49$$.keyCode && $JSCompiler_StaticMethods_performActionInternal$$(this, $e$$49$$) ? ($e$$49$$.preventDefault(), $e$$49$$.stopPropagation(), $JSCompiler_alias_TRUE$$) : $JSCompiler_alias_FALSE$$
2996};
2997$goog$isFunction$$($goog$ui$Control$$) || $JSCompiler_alias_THROW$$(Error("Invalid component class " + $goog$ui$Control$$));
2998$goog$isFunction$$($goog$ui$ControlRenderer$$) || $JSCompiler_alias_THROW$$(Error("Invalid renderer class " + $goog$ui$ControlRenderer$$));
2999var $key$$inline_637$$ = $goog$getUid$$($goog$ui$Control$$);
3000$goog$ui$registry$defaultRenderers_$$[$key$$inline_637$$] = $goog$ui$ControlRenderer$$;
3001function $decoratorFn$$inline_639$$() {
3002 return new $goog$ui$Control$$($JSCompiler_alias_NULL$$)
3003}
3004$goog$isFunction$$($decoratorFn$$inline_639$$) || $JSCompiler_alias_THROW$$(Error("Invalid decorator function " + $decoratorFn$$inline_639$$));
3005function $goog$ui$TextareaRenderer$$() {
3006}
3007$goog$inherits$$($goog$ui$TextareaRenderer$$, $goog$ui$ControlRenderer$$);
3008$goog$addSingletonGetter$$($goog$ui$TextareaRenderer$$);
3009$JSCompiler_prototypeAlias$$ = $goog$ui$TextareaRenderer$$.prototype;
3010$JSCompiler_prototypeAlias$$.$decorate$ = function $$JSCompiler_prototypeAlias$$$$decorate$$($control$$11$$, $element$$104$$) {
3011 $JSCompiler_StaticMethods_setHandleMouseEvents$$($control$$11$$);
3012 $control$$11$$.$autoStates_$ &= -256;
3013 $control$$11$$.$inDocument_$ && $control$$11$$.$state_$ & 32 && $JSCompiler_alias_THROW$$(Error("Component already rendered"));
3014 $control$$11$$.$state_$ & 32 && $control$$11$$.$setState$(32, $JSCompiler_alias_FALSE$$);
3015 $control$$11$$.$supportedStates_$ &= -33;
3016 $goog$ui$TextareaRenderer$$.$superClass_$.$decorate$.call(this, $control$$11$$, $element$$104$$);
3017 $control$$11$$.$setContent$($element$$104$$.value);
3018 return $element$$104$$
3019};
3020$JSCompiler_prototypeAlias$$.$canDecorate$ = function $$JSCompiler_prototypeAlias$$$$canDecorate$$($element$$106$$) {
3021 return"TEXTAREA" == $element$$106$$.tagName
3022};
3023$JSCompiler_prototypeAlias$$.$setRightToLeft$ = $goog$nullFunction$$;
3024$JSCompiler_prototypeAlias$$.$isFocusable$ = function $$JSCompiler_prototypeAlias$$$$isFocusable$$($textarea$$1$$) {
3025 return $textarea$$1$$.isEnabled()
3026};
3027$JSCompiler_prototypeAlias$$.$setFocusable$ = $goog$nullFunction$$;
3028$JSCompiler_prototypeAlias$$.$setState$ = function $$JSCompiler_prototypeAlias$$$$setState$$($element$$107_textarea$$2$$, $state$$16$$, $enable$$13$$) {
3029 $goog$ui$TextareaRenderer$$.$superClass_$.$setState$.call(this, $element$$107_textarea$$2$$, $state$$16$$, $enable$$13$$);
3030 if(($element$$107_textarea$$2$$ = $element$$107_textarea$$2$$.$getElement$()) && 1 == $state$$16$$) {
3031 $element$$107_textarea$$2$$.disabled = $enable$$13$$
3032 }
3033};
3034$JSCompiler_prototypeAlias$$.$updateAriaState$ = $goog$nullFunction$$;
3035$JSCompiler_prototypeAlias$$.$setContent$ = function $$JSCompiler_prototypeAlias$$$$setContent$$($element$$108$$, $value$$78$$) {
3036 $element$$108$$ && ($element$$108$$.value = $value$$78$$)
3037};
3038$JSCompiler_prototypeAlias$$.$getCssClass$ = $JSCompiler_returnArg$$("goog-textarea");
3039function $goog$ui$Textarea$$($content$$7$$, $opt_renderer$$1$$, $opt_domHelper$$4$$) {
3040 $goog$ui$Control$$.call(this, $content$$7$$, $opt_renderer$$1$$ || $goog$ui$TextareaRenderer$$.$getInstance$(), $opt_domHelper$$4$$);
3041 $JSCompiler_StaticMethods_setHandleMouseEvents$$(this);
3042 this.$setAllowTextSelection$($JSCompiler_alias_TRUE$$);
3043 $content$$7$$ || (this.$content_$ = "")
3044}
3045$goog$inherits$$($goog$ui$Textarea$$, $goog$ui$Control$$);
3046var $goog$ui$Textarea$NEEDS_HELP_SHRINKING_$$ = $goog$userAgent$GECKO$$ || $goog$userAgent$WEBKIT$$;
3047$JSCompiler_prototypeAlias$$ = $goog$ui$Textarea$$.prototype;
3048$JSCompiler_prototypeAlias$$.$isResizing_$ = $JSCompiler_alias_FALSE$$;
3049$JSCompiler_prototypeAlias$$.$height_$ = 0;
3050$JSCompiler_prototypeAlias$$.$maxHeight_$ = 0;
3051$JSCompiler_prototypeAlias$$.$minHeight_$ = 0;
3052$JSCompiler_prototypeAlias$$.$hasDiscoveredTextareaCharacteristics_$ = $JSCompiler_alias_FALSE$$;
3053$JSCompiler_prototypeAlias$$.$needsPaddingBorderFix_$ = $JSCompiler_alias_FALSE$$;
3054$JSCompiler_prototypeAlias$$.$scrollHeightIncludesPadding_$ = $JSCompiler_alias_FALSE$$;
3055$JSCompiler_prototypeAlias$$.$scrollHeightIncludesBorder_$ = $JSCompiler_alias_FALSE$$;
3056function $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$$($JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$self$$) {
3057 return $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$self$$.$paddingBox_$.top + $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$self$$.$paddingBox_$.bottom + $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$self$$.$borderBox_$.top + $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$self$$.$borderBox_$.bottom
3058}
3059function $JSCompiler_StaticMethods_getMinHeight_$$($JSCompiler_StaticMethods_getMinHeight_$self$$) {
3060 var $minHeight$$ = $JSCompiler_StaticMethods_getMinHeight_$self$$.$minHeight_$, $textarea$$4$$ = $JSCompiler_StaticMethods_getMinHeight_$self$$.$getElement$();
3061 $minHeight$$ && ($textarea$$4$$ && $JSCompiler_StaticMethods_getMinHeight_$self$$.$needsPaddingBorderFix_$) && ($minHeight$$ -= $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$$($JSCompiler_StaticMethods_getMinHeight_$self$$));
3062 return $minHeight$$
3063}
3064function $JSCompiler_StaticMethods_getMaxHeight_$$($JSCompiler_StaticMethods_getMaxHeight_$self$$) {
3065 var $maxHeight$$ = $JSCompiler_StaticMethods_getMaxHeight_$self$$.$maxHeight_$, $textarea$$5$$ = $JSCompiler_StaticMethods_getMaxHeight_$self$$.$getElement$();
3066 $maxHeight$$ && ($textarea$$5$$ && $JSCompiler_StaticMethods_getMaxHeight_$self$$.$needsPaddingBorderFix_$) && ($maxHeight$$ -= $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$$($JSCompiler_StaticMethods_getMaxHeight_$self$$));
3067 return $maxHeight$$
3068}
3069$JSCompiler_prototypeAlias$$.$setContent$ = function $$JSCompiler_prototypeAlias$$$$setContent$$($content$$8$$) {
3070 $goog$ui$Textarea$$.$superClass_$.$setContent$.call(this, $content$$8$$);
3071 this.$getElement$() && this.$grow_$()
3072};
3073$JSCompiler_prototypeAlias$$.$enterDocument$ = function $$JSCompiler_prototypeAlias$$$$enterDocument$$() {
3074 $goog$ui$Textarea$$.$superClass_$.$enterDocument$.call(this);
3075 var $textarea$$6$$ = this.$getElement$();
3076 $goog$style$setStyle$$($textarea$$6$$, {overflowY:"hidden", overflowX:"auto", boxSizing:"border-box", MsBoxSizing:"border-box", WebkitBoxSizing:"border-box", MozBoxSizing:"border-box"});
3077 this.$paddingBox_$ = $goog$style$getBox_$$($textarea$$6$$, "padding");
3078 this.$borderBox_$ = $goog$style$getBorderBox$$($textarea$$6$$);
3079 $JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$(this.$getHandler$(), $textarea$$6$$, "scroll", this.$grow_$), $textarea$$6$$, "focus", this.$grow_$), $textarea$$6$$, "keyup", this.$grow_$), $textarea$$6$$, "mouseup", this.$mouseUpListener_$);
3080 this.$getElement$() && this.$grow_$()
3081};
3082function $JSCompiler_StaticMethods_getHeight_$$($JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$) {
3083 if(!$JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$hasDiscoveredTextareaCharacteristics_$) {
3084 var $textarea$$7_textarea$$inline_654$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$getElement$().cloneNode($JSCompiler_alias_FALSE$$);
3085 $goog$style$setStyle$$($textarea$$7_textarea$$inline_654$$, {position:"absolute", height:"auto", top:"-9999px", margin:"0", padding:"1px", border:"1px solid #000", overflow:"hidden"});
3086 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$getDomHelper$().$document_$.body.appendChild($textarea$$7_textarea$$inline_654$$);
3087 var $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ = $textarea$$7_textarea$$inline_654$$.scrollHeight;
3088 $textarea$$7_textarea$$inline_654$$.style.padding = "10px";
3089 var $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ = $textarea$$7_textarea$$inline_654$$.scrollHeight;
3090 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesPadding_$ = $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ > $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$;
3091 $textarea$$7_textarea$$inline_654$$.style.borderWidth = "10px";
3092 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesBorder_$ = $textarea$$7_textarea$$inline_654$$.scrollHeight > $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$;
3093 $textarea$$7_textarea$$inline_654$$.style.height = "100px";
3094 100 != $textarea$$7_textarea$$inline_654$$.offsetHeight && ($JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$needsPaddingBorderFix_$ = $JSCompiler_alias_TRUE$$);
3095 $goog$dom$removeNode$$($textarea$$7_textarea$$inline_654$$);
3096 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$hasDiscoveredTextareaCharacteristics_$ = $JSCompiler_alias_TRUE$$
3097 }
3098 var $textarea$$7_textarea$$inline_654$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$getElement$(), $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$getElement$().scrollHeight, $borderBox$$inline_662_textarea$$inline_659$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$getElement$(), $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ = $borderBox$$inline_662_textarea$$inline_659$$.offsetHeight -
3099 $borderBox$$inline_662_textarea$$inline_659$$.clientHeight;
3100 if(!$JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesPadding_$) {
3101 var $paddingBox$$inline_661$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$paddingBox_$, $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ = $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ - ($paddingBox$$inline_661$$.top + $paddingBox$$inline_661$$.bottom)
3102 }
3103 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesBorder_$ || ($borderBox$$inline_662_textarea$$inline_659$$ = $goog$style$getBorderBox$$($borderBox$$inline_662_textarea$$inline_659$$), $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ -= $borderBox$$inline_662_textarea$$inline_659$$.top + $borderBox$$inline_662_textarea$$inline_659$$.bottom);
3104 $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ += 0 < $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ ? $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ : 0;
3105 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$needsPaddingBorderFix_$ ? $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ -= $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$$($JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$) : ($JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesPadding_$ || ($height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$paddingBox_$,
3106 $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ += $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$.top + $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$.bottom), $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesBorder_$ || ($JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$ = $goog$style$getBorderBox$$($textarea$$7_textarea$$inline_654$$), $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ +=
3107 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.top + $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.bottom));
3108 return $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$
3109}
3110function $JSCompiler_StaticMethods_setHeight_$$($JSCompiler_StaticMethods_setHeight_$self$$, $height$$22$$) {
3111 $JSCompiler_StaticMethods_setHeight_$self$$.$height_$ != $height$$22$$ && ($JSCompiler_StaticMethods_setHeight_$self$$.$height_$ = $height$$22$$, $JSCompiler_StaticMethods_setHeight_$self$$.$getElement$().style.height = $height$$22$$ + "px")
3112}
3113function $JSCompiler_StaticMethods_setHeightToEstimate_$$($JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$) {
3114 $JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$ = $JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$.$getElement$();
3115 $JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$.style.height = "auto";
3116 var $newlines$$ = $JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$.value.match(/\n/g) || [];
3117 $JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$.rows = $newlines$$.length + 1
3118}
3119$JSCompiler_prototypeAlias$$.$grow_$ = function $$JSCompiler_prototypeAlias$$$$grow_$$() {
3120 if(!this.$isResizing_$) {
3121 var $shouldCallShrink_textarea$$inline_668$$ = $JSCompiler_alias_FALSE$$;
3122 this.$isResizing_$ = $JSCompiler_alias_TRUE$$;
3123 var $isEmpty$$inline_669_textarea$$11$$ = this.$getElement$(), $oldHeight$$ = this.$height_$;
3124 if($isEmpty$$inline_669_textarea$$11$$.scrollHeight) {
3125 var $minHeight$$inline_672_setMinHeight$$ = $JSCompiler_alias_FALSE$$, $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ = $JSCompiler_alias_FALSE$$, $currentHeight$$inline_671_newHeight$$ = $JSCompiler_StaticMethods_getHeight_$$(this), $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$ = $isEmpty$$inline_669_textarea$$11$$.offsetHeight, $minHeight$$1$$ = $JSCompiler_StaticMethods_getMinHeight_$$(this), $maxHeight$$1$$ = $JSCompiler_StaticMethods_getMaxHeight_$$(this);
3126 $minHeight$$1$$ && $currentHeight$$inline_671_newHeight$$ < $minHeight$$1$$ ? ($JSCompiler_StaticMethods_setHeight_$$(this, $minHeight$$1$$), $minHeight$$inline_672_setMinHeight$$ = $JSCompiler_alias_TRUE$$) : $maxHeight$$1$$ && $currentHeight$$inline_671_newHeight$$ > $maxHeight$$1$$ ? ($JSCompiler_StaticMethods_setHeight_$$(this, $maxHeight$$1$$), $isEmpty$$inline_669_textarea$$11$$.style.overflowY = "", $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ = $JSCompiler_alias_TRUE$$) :
3127 $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$ != $currentHeight$$inline_671_newHeight$$ ? $JSCompiler_StaticMethods_setHeight_$$(this, $currentHeight$$inline_671_newHeight$$) : this.$height_$ || (this.$height_$ = $currentHeight$$inline_671_newHeight$$);
3128 !$minHeight$$inline_672_setMinHeight$$ && (!$scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ && $goog$ui$Textarea$NEEDS_HELP_SHRINKING_$$) && ($shouldCallShrink_textarea$$inline_668$$ = $JSCompiler_alias_TRUE$$)
3129 }else {
3130 $JSCompiler_StaticMethods_setHeightToEstimate_$$(this)
3131 }
3132 this.$isResizing_$ = $JSCompiler_alias_FALSE$$;
3133 $shouldCallShrink_textarea$$inline_668$$ && ($shouldCallShrink_textarea$$inline_668$$ = this.$getElement$(), this.$isResizing_$ || (this.$isResizing_$ = $JSCompiler_alias_TRUE$$, $isEmpty$$inline_669_textarea$$11$$ = $JSCompiler_alias_FALSE$$, $shouldCallShrink_textarea$$inline_668$$.value || ($shouldCallShrink_textarea$$inline_668$$.value = " ", $isEmpty$$inline_669_textarea$$11$$ = $JSCompiler_alias_TRUE$$), ($scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ = $shouldCallShrink_textarea$$inline_668$$.scrollHeight) ?
3134 ($currentHeight$$inline_671_newHeight$$ = $JSCompiler_StaticMethods_getHeight_$$(this), $minHeight$$inline_672_setMinHeight$$ = $JSCompiler_StaticMethods_getMinHeight_$$(this), $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$ = $JSCompiler_StaticMethods_getMaxHeight_$$(this), !($minHeight$$inline_672_setMinHeight$$ && $currentHeight$$inline_671_newHeight$$ <= $minHeight$$inline_672_setMinHeight$$) && !($currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$ && $currentHeight$$inline_671_newHeight$$ >=
3135 $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$) && ($currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$ = this.$paddingBox_$, $shouldCallShrink_textarea$$inline_668$$.style.paddingBottom = $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$.bottom + 1 + "px", $JSCompiler_StaticMethods_getHeight_$$(this) == $currentHeight$$inline_671_newHeight$$ && ($shouldCallShrink_textarea$$inline_668$$.style.paddingBottom = $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$.bottom +
3136 $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ + "px", $shouldCallShrink_textarea$$inline_668$$.scrollTop = 0, $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ = $JSCompiler_StaticMethods_getHeight_$$(this) - $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$, $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ >= $minHeight$$inline_672_setMinHeight$$ ? $JSCompiler_StaticMethods_setHeight_$$(this, $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$) :
3137 $JSCompiler_StaticMethods_setHeight_$$(this, $minHeight$$inline_672_setMinHeight$$)), $shouldCallShrink_textarea$$inline_668$$.style.paddingBottom = $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$.bottom + "px")) : $JSCompiler_StaticMethods_setHeightToEstimate_$$(this), $isEmpty$$inline_669_textarea$$11$$ && ($shouldCallShrink_textarea$$inline_668$$.value = ""), this.$isResizing_$ = $JSCompiler_alias_FALSE$$));
3138 $oldHeight$$ != this.$height_$ && this.dispatchEvent("resize")
3139 }
3140};
3141$JSCompiler_prototypeAlias$$.$mouseUpListener_$ = function $$JSCompiler_prototypeAlias$$$$mouseUpListener_$$() {
3142 var $dropShadow_textarea$$13$$ = this.$getElement$(), $height$$24$$ = $dropShadow_textarea$$13$$.offsetHeight;
3143 $dropShadow_textarea$$13$$.filters && $dropShadow_textarea$$13$$.filters.length && ($dropShadow_textarea$$13$$ = $dropShadow_textarea$$13$$.filters.item("DXImageTransform.Microsoft.DropShadow")) && ($height$$24$$ -= $dropShadow_textarea$$13$$.offX);
3144 $height$$24$$ != this.$height_$ && (this.$height_$ = this.$minHeight_$ = $height$$24$$)
3145};
3146$goog$userAgent$IE$$ && $goog$userAgent$isVersion$$(8);
3147function $soy$$0$0escapeHtml$$($value$$80$$) {
3148 return"object" === typeof $value$$80$$ && $value$$80$$ && 0 === $value$$80$$.$contentKind$ ? $value$$80$$.content : String($value$$80$$).replace($soy$esc$$0$0MATCHER_FOR_ESCAPE_HTML_$$, $soy$esc$$0$0REPLACER_FOR_ESCAPE_HTML__AND__NORMALIZE_HTML__AND__ESCAPE_HTML_NOSPACE__AND__NORMALIZE_HTML_NOSPACE_$$)
3149}
3150var $soy$esc$$0$0ESCAPE_MAP_FOR_ESCAPE_HTML__AND__NORMALIZE_HTML__AND__ESCAPE_HTML_NOSPACE__AND__NORMALIZE_HTML_NOSPACE_$$ = {"\x00":"&#0;", '"':"&quot;", "&":"&amp;", "'":"&#39;", "<":"&lt;", ">":"&gt;", "\t":"&#9;", "\n":"&#10;", "\x0B":"&#11;", "\f":"&#12;", "\r":"&#13;", " ":"&#32;", "-":"&#45;", "/":"&#47;", "=":"&#61;", "`":"&#96;", "\u0085":"&#133;", "\u00a0":"&#160;", "\u2028":"&#8232;", "\u2029":"&#8233;"};
3151function $soy$esc$$0$0REPLACER_FOR_ESCAPE_HTML__AND__NORMALIZE_HTML__AND__ESCAPE_HTML_NOSPACE__AND__NORMALIZE_HTML_NOSPACE_$$($ch$$7$$) {
3152 return $soy$esc$$0$0ESCAPE_MAP_FOR_ESCAPE_HTML__AND__NORMALIZE_HTML__AND__ESCAPE_HTML_NOSPACE__AND__NORMALIZE_HTML_NOSPACE_$$[$ch$$7$$]
3153}
3154var $soy$esc$$0$0MATCHER_FOR_ESCAPE_HTML_$$ = /[\x00\x22\x26\x27\x3c\x3e]/g;
3155function $annotorious$templates$popup$$() {
3156 return'<div class="annotorious-popup top-left" style="position:absolute;z-index:1"><div class="annotorious-popup-buttons"><a class="annotorious-popup-button annotorious-popup-button-edit" title="Edit" href="javascript:void(0);">EDIT</a><a class="annotorious-popup-button annotorious-popup-button-delete" title="Delete" href="javascript:void(0);">DELETE</a></div><span class="annotorious-popup-text"></span></div>'
3157}
3158function $annotorious$templates$editform$$() {
3159 return'<div class="annotorious-editor" style="position:absolute;z-index:1"><form><textarea class="annotorious-editor-text" placeholder="Add a Comment..." tabindex="1"></textarea><div class="annotorious-editor-button-container"><a class="annotorious-editor-button annotorious-editor-button-cancel" href="javascript:void(0);" tabindex="3">Cancel</a><a class="annotorious-editor-button annotorious-editor-button-save" href="javascript:void(0);" tabindex="2">Save</a></div></form></div>'
3160}
3161;function $annotorious$Editor$$($annotator$$23$$) {
3162 function $opt_callback$$inline_686$$() {
3163 var $JSCompiler_StaticMethods_resize$self$$inline_683$$ = $self$$5$$.$_textarea$;
3164 $JSCompiler_StaticMethods_resize$self$$inline_683$$.$getElement$() && $JSCompiler_StaticMethods_resize$self$$inline_683$$.$grow_$()
3165 }
3166 this.element = $goog$soy$renderAsElement$$($annotorious$templates$editform$$);
3167 this.$_annotator$ = $annotator$$23$$;
3168 this.$_item$ = $annotator$$23$$.getItem();
3169 this.$_textarea$ = new $goog$ui$Textarea$$("");
3170 this.$_btnCancel$ = $query$$inline_154$$(".annotorious-editor-button-cancel", this.element)[0];
3171 this.$_btnSave$ = $query$$inline_154$$(".annotorious-editor-button-save", this.element)[0];
3172 var $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$;
3173 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = this.$_btnSave$;
3174 $goog$dom$BrowserFeature$CAN_USE_PARENT_ELEMENT_PROPERTY$$ ? $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$.parentElement : ($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$.parentNode,
3175 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = $goog$dom$isElement$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$) ? $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ : $JSCompiler_alias_NULL$$);
3176 this.$_btnContainer$ = $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$;
3177 this.$_extraFields$ = [];
3178 var $self$$5$$ = this;
3179 $goog$events$listen$$(this.$_btnCancel$, "click", function($event$$4$$) {
3180 $event$$4$$.preventDefault();
3181 $annotator$$23$$.stopSelection($self$$5$$.$_original_annotation$);
3182 $self$$5$$.close()
3183 });
3184 $goog$events$listen$$(this.$_btnSave$, "click", function($annotation$$8_event$$5$$) {
3185 $annotation$$8_event$$5$$.preventDefault();
3186 $annotation$$8_event$$5$$ = $self$$5$$.$getAnnotation$();
3187 $annotator$$23$$.$addAnnotation$($annotation$$8_event$$5$$);
3188 $annotator$$23$$.stopSelection();
3189 $self$$5$$.$_original_annotation$ ? $annotator$$23$$.fireEvent("onAnnotationUpdated", $annotation$$8_event$$5$$) : $annotator$$23$$.fireEvent("onAnnotationCreated", $annotation$$8_event$$5$$);
3190 $self$$5$$.close()
3191 });
3192 $goog$style$showElement$$(this.element, $JSCompiler_alias_FALSE$$);
3193 $annotator$$23$$.element.appendChild(this.element);
3194 this.$_textarea$.$decorate$($query$$inline_154$$(".annotorious-editor-text", this.element)[0]);
3195 var $div$$inline_685$$ = this.element;
3196 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = document.createElement("div");
3197 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "position", "absolute");
3198 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "top", "0px");
3199 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "right", "0px");
3200 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "width", "5px");
3201 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "height", "100%");
3202 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "cursor", "e-resize");
3203 $div$$inline_685$$.appendChild($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$);
3204 var $div_border$$inline_688_width_limit$$inline_689$$ = $goog$style$getBorderBox$$($div$$inline_685$$), $div_border$$inline_688_width_limit$$inline_689$$ = $goog$style$getBounds$$($div$$inline_685$$).width - $div_border$$inline_688_width_limit$$inline_689$$.right - $div_border$$inline_688_width_limit$$inline_689$$.left;
3205 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = new $goog$fx$Dragger$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$);
3206 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$.$limits$ = new $goog$math$Rect$$($div_border$$inline_688_width_limit$$inline_689$$, 0, 800, 0) || new $goog$math$Rect$$(NaN, NaN, NaN, NaN);
3207 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$.$defaultAction$ = function $$JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$$$defaultAction$$($x$$inline_691$$) {
3208 $goog$style$setStyle$$($div$$inline_685$$, "width", $x$$inline_691$$ + "px");
3209 $opt_callback$$inline_686$$ && $opt_callback$$inline_686$$()
3210 }
3211}
3212$JSCompiler_prototypeAlias$$ = $annotorious$Editor$$.prototype;
3213$JSCompiler_prototypeAlias$$.$addField$ = function $$JSCompiler_prototypeAlias$$$$addField$$($field_refNode$$inline_697$$) {
3214 var $fieldEl$$ = $goog$dom$createDom$$("div", "annotorious-editor-field");
3215 $goog$isString$$($field_refNode$$inline_697$$) ? $fieldEl$$.innerHTML = $field_refNode$$inline_697$$ : $goog$isFunction$$($field_refNode$$inline_697$$) ? this.$_extraFields$.push({$el$:$fieldEl$$, $fn$:$field_refNode$$inline_697$$}) : $goog$dom$isElement$$($field_refNode$$inline_697$$) && $fieldEl$$.appendChild($field_refNode$$inline_697$$);
3216 $field_refNode$$inline_697$$ = this.$_btnContainer$;
3217 $field_refNode$$inline_697$$.parentNode && $field_refNode$$inline_697$$.parentNode.insertBefore($fieldEl$$, $field_refNode$$inline_697$$)
3218};
3219$JSCompiler_prototypeAlias$$.open = function $$JSCompiler_prototypeAlias$$$open$($opt_annotation$$) {
3220 (this.$_current_annotation$ = this.$_original_annotation$ = $opt_annotation$$) && this.$_textarea$.$setContent$(String($opt_annotation$$.text));
3221 $goog$style$showElement$$(this.element, $JSCompiler_alias_TRUE$$);
3222 this.$_textarea$.$getElement$().focus();
3223 $goog$array$forEach$$(this.$_extraFields$, function($field$$1$$) {
3224 var $f$$45$$ = $field$$1$$.$fn$($opt_annotation$$);
3225 $goog$isString$$($f$$45$$) ? $field$$1$$.$el$.innerHTML = $f$$45$$ : $goog$dom$isElement$$($f$$45$$) && ($goog$dom$removeChildren$$($field$$1$$.$el$), $field$$1$$.$el$.appendChild($f$$45$$))
3226 })
3227};
3228$JSCompiler_prototypeAlias$$.close = function $$JSCompiler_prototypeAlias$$$close$() {
3229 $goog$style$showElement$$(this.element, $JSCompiler_alias_FALSE$$);
3230 this.$_textarea$.$setContent$("")
3231};
3232$JSCompiler_prototypeAlias$$.setPosition = function $$JSCompiler_prototypeAlias$$$setPosition$($xy$$) {
3233 $goog$style$setPosition$$(this.element, $xy$$.x, $xy$$.y)
3234};
3235$JSCompiler_prototypeAlias$$.$getAnnotation$ = function $$JSCompiler_prototypeAlias$$$$getAnnotation$$() {
3236 var $htmlText$$inline_708_sanitized$$;
3237 $htmlText$$inline_708_sanitized$$ = this.$_textarea$.$getElement$().value;
3238 var $stringBuffer$$inline_711$$ = new $goog$string$StringBuffer$$;
3239 (new $goog$string$html$HtmlParser$$).parse(new $goog$string$html$HtmlSanitizer$$($stringBuffer$$inline_711$$, function($url$$22$$) {
3240 return $url$$22$$
3241 }, $JSCompiler_alias_VOID$$), $htmlText$$inline_708_sanitized$$);
3242 $htmlText$$inline_708_sanitized$$ = $stringBuffer$$inline_711$$.toString();
3243 this.$_current_annotation$ ? this.$_current_annotation$.text = $htmlText$$inline_708_sanitized$$ : this.$_current_annotation$ = new $annotorious$Annotation$$(this.$_item$.src, $htmlText$$inline_708_sanitized$$, this.$_annotator$.$getActiveSelector$().getShape());
3244 return this.$_current_annotation$
3245};
3246$annotorious$Editor$$.prototype.addField = $annotorious$Editor$$.prototype.$addField$;
3247$annotorious$Editor$$.prototype.getAnnotation = $annotorious$Editor$$.prototype.$getAnnotation$;
3248function $annotorious$Hint$$($annotator$$24$$, $parent$$24$$, $opt_msg$$1$$) {
3249 var $self$$6$$ = this;
3250 $opt_msg$$1$$ || ($opt_msg$$1$$ = "Click and Drag to Annotate");
3251 this.element = $goog$soy$renderAsElement$$($annotorious$templates$image$hint$$, {$msg$:$opt_msg$$1$$});
3252 this.$_annotator$ = $annotator$$24$$;
3253 this.$_message$ = $query$$inline_154$$(".annotorious-hint-msg", this.element)[0];
3254 this.$_icon$ = $query$$inline_154$$(".annotorious-hint-icon", this.element)[0];
3255 this.$_overItemHandler$ = function $this$$_overItemHandler$$() {
3256 $self$$6$$.show()
3257 };
3258 this.$_outOfItemHandler$ = function $this$$_outOfItemHandler$$() {
3259 $JSCompiler_StaticMethods_hide$$($self$$6$$)
3260 };
3261 this.$_attachListeners$();
3262 $JSCompiler_StaticMethods_hide$$(this);
3263 $parent$$24$$.appendChild(this.element)
3264}
3265$annotorious$Hint$$.prototype.$_attachListeners$ = function $$annotorious$Hint$$$$$_attachListeners$$() {
3266 var $self$$7$$ = this;
3267 this.$_mouseOverListener$ = $goog$events$listen$$(this.$_icon$, "mouseover", function() {
3268 $self$$7$$.show();
3269 window.clearTimeout($self$$7$$.$_hideTimer$)
3270 });
3271 this.$_mouseOutListener$ = $goog$events$listen$$(this.$_icon$, "mouseout", function() {
3272 $JSCompiler_StaticMethods_hide$$($self$$7$$)
3273 });
3274 this.$_annotator$.$addHandler$("onMouseOverItem", this.$_overItemHandler$);
3275 this.$_annotator$.$addHandler$("onMouseOutOfItem", this.$_outOfItemHandler$)
3276};
3277$annotorious$Hint$$.prototype.$_detachListeners$ = function $$annotorious$Hint$$$$$_detachListeners$$() {
3278 $goog$events$unlistenByKey$$(this.$_mouseOverListener$);
3279 $goog$events$unlistenByKey$$(this.$_mouseOutListener$);
3280 this.$_annotator$.$removeHandler$("onMouseOverItem", this.$_overItemHandler$);
3281 this.$_annotator$.$removeHandler$("onMouseOutOfItem", this.$_outOfItemHandler$)
3282};
3283$annotorious$Hint$$.prototype.show = function $$annotorious$Hint$$$$show$() {
3284 window.clearTimeout(this.$_hideTimer$);
3285 $goog$style$setOpacity$$(this.$_message$, 0.8);
3286 var $self$$8$$ = this;
3287 this.$_hideTimer$ = window.setTimeout(function() {
3288 $JSCompiler_StaticMethods_hide$$($self$$8$$)
3289 }, 3E3)
3290};
3291function $JSCompiler_StaticMethods_hide$$($JSCompiler_StaticMethods_hide$self$$) {
3292 window.clearTimeout($JSCompiler_StaticMethods_hide$self$$.$_hideTimer$);
3293 $goog$style$setOpacity$$($JSCompiler_StaticMethods_hide$self$$.$_message$, 0)
3294}
3295$annotorious$Hint$$.prototype.$destroy$ = function $$annotorious$Hint$$$$$destroy$$() {
3296 this.$_detachListeners$();
3297 delete this.$_mouseOverListener$;
3298 delete this.$_mouseOutListener$;
3299 delete this.$_overItemHandler$;
3300 delete this.$_outOfItemHandler$;
3301 $goog$dom$removeNode$$(this.element)
3302};
3303function $annotorious$Popup$$($annotator$$25$$) {
3304 this.element = $goog$soy$renderAsElement$$($annotorious$templates$popup$$);
3305 this.$_annotator$ = $annotator$$25$$;
3306 this.$_text$ = $query$$inline_154$$(".annotorious-popup-text", this.element)[0];
3307 this.$_buttons$ = $query$$inline_154$$(".annotorious-popup-buttons", this.element)[0];
3308 this.$_cancelHide$ = $JSCompiler_alias_FALSE$$;
3309 this.$_extraFields$ = [];
3310 var $btnEdit$$ = $query$$inline_154$$(".annotorious-popup-button-edit", this.$_buttons$)[0], $btnDelete$$ = $query$$inline_154$$(".annotorious-popup-button-delete", this.$_buttons$)[0], $self$$9$$ = this;
3311 $goog$events$listen$$($btnEdit$$, "mouseover", function() {
3312 $goog$dom$classes$add$$($btnEdit$$, "annotorious-popup-button-active")
3313 });
3314 $goog$events$listen$$($btnEdit$$, "mouseout", function() {
3315 $goog$dom$classes$remove$$($btnEdit$$, "annotorious-popup-button-active")
3316 });
3317 $goog$events$listen$$($btnEdit$$, "click", function() {
3318 $goog$style$setOpacity$$($self$$9$$.element, 0);
3319 $goog$style$setStyle$$($self$$9$$.element, "pointer-events", "none");
3320 $annotator$$25$$.$editAnnotation$($self$$9$$.$_currentAnnotation$)
3321 });
3322 $goog$events$listen$$($btnDelete$$, "mouseover", function() {
3323 $goog$dom$classes$add$$($btnDelete$$, "annotorious-popup-button-active")
3324 });
3325 $goog$events$listen$$($btnDelete$$, "mouseout", function() {
3326 $goog$dom$classes$remove$$($btnDelete$$, "annotorious-popup-button-active")
3327 });
3328 $goog$events$listen$$($btnDelete$$, "click", function() {
3329 $annotator$$25$$.fireEvent("beforeAnnotationRemoved", $self$$9$$.$_currentAnnotation$) || ($goog$style$setOpacity$$($self$$9$$.element, 0), $goog$style$setStyle$$($self$$9$$.element, "pointer-events", "none"), $annotator$$25$$.$removeAnnotation$($self$$9$$.$_currentAnnotation$), $annotator$$25$$.fireEvent("onAnnotationRemoved", $self$$9$$.$_currentAnnotation$))
3330 });
3331 $annotorious$events$ui$hasMouse$$ && ($goog$events$listen$$(this.element, "mouseover", function() {
3332 window.clearTimeout($self$$9$$.$_buttonHideTimer$);
3333 0.9 > ($self$$9$$.$_buttons$.style[$goog$string$toCamelCase$$("opacity")] || "") && $goog$style$setOpacity$$($self$$9$$.$_buttons$, 0.9);
3334 $self$$9$$.clearHideTimer()
3335 }), $goog$events$listen$$(this.element, "mouseout", function() {
3336 $goog$style$setOpacity$$($self$$9$$.$_buttons$, 0);
3337 $self$$9$$.startHideTimer()
3338 }), $annotator$$25$$.$addHandler$("onMouseOutOfItem", function() {
3339 $self$$9$$.startHideTimer()
3340 }));
3341 $goog$style$setOpacity$$(this.$_buttons$, 0);
3342 $goog$style$setOpacity$$(this.element, 0);
3343 $goog$style$setStyle$$(this.element, "pointer-events", "none");
3344 $annotator$$25$$.element.appendChild(this.element)
3345}
3346$JSCompiler_prototypeAlias$$ = $annotorious$Popup$$.prototype;
3347$JSCompiler_prototypeAlias$$.$addField$ = function $$JSCompiler_prototypeAlias$$$$addField$$($field$$2$$) {
3348 var $fieldEl$$1$$ = $goog$dom$createDom$$("div", "annotorious-popup-field");
3349 $goog$isString$$($field$$2$$) ? $fieldEl$$1$$.innerHTML = $field$$2$$ : $goog$isFunction$$($field$$2$$) ? this.$_extraFields$.push({$el$:$fieldEl$$1$$, $fn$:$field$$2$$}) : $goog$dom$isElement$$($field$$2$$) && $fieldEl$$1$$.appendChild($field$$2$$);
3350 this.element.appendChild($fieldEl$$1$$)
3351};
3352$JSCompiler_prototypeAlias$$.startHideTimer = function $$JSCompiler_prototypeAlias$$$startHideTimer$() {
3353 this.$_cancelHide$ = $JSCompiler_alias_FALSE$$;
3354 if(!this.$_popupHideTimer$) {
3355 var $self$$10$$ = this;
3356 this.$_popupHideTimer$ = window.setTimeout(function() {
3357 $self$$10$$.$_annotator$.fireEvent("beforePopupHide", $self$$10$$);
3358 $self$$10$$.$_cancelHide$ || ($goog$style$setOpacity$$($self$$10$$.element, 0), $goog$style$setStyle$$($self$$10$$.element, "pointer-events", "none"), $goog$style$setOpacity$$($self$$10$$.$_buttons$, 0.9), delete $self$$10$$.$_popupHideTimer$)
3359 }, 150)
3360 }
3361};
3362$JSCompiler_prototypeAlias$$.clearHideTimer = function $$JSCompiler_prototypeAlias$$$clearHideTimer$() {
3363 this.$_cancelHide$ = $JSCompiler_alias_TRUE$$;
3364 this.$_popupHideTimer$ && (window.clearTimeout(this.$_popupHideTimer$), delete this.$_popupHideTimer$)
3365};
3366$JSCompiler_prototypeAlias$$.show = function $$JSCompiler_prototypeAlias$$$show$($annotation$$9$$, $xy$$1$$) {
3367 this.clearHideTimer();
3368 $xy$$1$$ && this.setPosition($xy$$1$$);
3369 $annotation$$9$$ && this.setAnnotation($annotation$$9$$);
3370 this.$_buttonHideTimer$ && window.clearTimeout(this.$_buttonHideTimer$);
3371 $goog$style$setOpacity$$(this.$_buttons$, 0.9);
3372 if($annotorious$events$ui$hasMouse$$) {
3373 var $self$$11$$ = this;
3374 this.$_buttonHideTimer$ = window.setTimeout(function() {
3375 $goog$style$setOpacity$$($self$$11$$.$_buttons$, 0)
3376 }, 1E3)
3377 }
3378 $goog$style$setOpacity$$(this.element, 0.9);
3379 $goog$style$setStyle$$(this.element, "pointer-events", "auto")
3380};
3381$JSCompiler_prototypeAlias$$.setPosition = function $$JSCompiler_prototypeAlias$$$setPosition$($xy$$2$$) {
3382 $goog$style$setPosition$$(this.element, new $goog$math$Coordinate$$($xy$$2$$.x, $xy$$2$$.y))
3383};
3384$JSCompiler_prototypeAlias$$.setAnnotation = function $$JSCompiler_prototypeAlias$$$setAnnotation$($annotation$$10$$) {
3385 this.$_currentAnnotation$ = $annotation$$10$$;
3386 this.$_text$.innerHTML = $annotation$$10$$.text ? $annotation$$10$$.text.replace(/\n/g, "<br/>") : '<span class="annotorious-popup-empty">No comment</span>';
3387 "editable" in $annotation$$10$$ && $annotation$$10$$.editable == $JSCompiler_alias_FALSE$$ ? $goog$style$showElement$$(this.$_buttons$, $JSCompiler_alias_FALSE$$) : $goog$style$showElement$$(this.$_buttons$, $JSCompiler_alias_TRUE$$);
3388 $goog$array$forEach$$(this.$_extraFields$, function($field$$3$$) {
3389 var $f$$46$$ = $field$$3$$.$fn$($annotation$$10$$);
3390 $goog$isString$$($f$$46$$) ? $field$$3$$.$el$.innerHTML = $f$$46$$ : $goog$dom$isElement$$($f$$46$$) && ($goog$dom$removeChildren$$($field$$3$$.$el$), $field$$3$$.$el$.appendChild($f$$46$$))
3391 })
3392};
3393$annotorious$Popup$$.prototype.addField = $annotorious$Popup$$.prototype.$addField$;
3394function $annotorious$mediatypes$image$Viewer$$($canvas$$, $annotator$$26$$) {
3395 this.$_canvas$ = $canvas$$;
3396 this.$_annotator$ = $annotator$$26$$;
3397 this.$_annotations$ = [];
3398 this.$_shapes$ = [];
3399 this.$_g2d$ = this.$_canvas$.getContext("2d");
3400 this.$_eventsEnabled$ = $JSCompiler_alias_TRUE$$;
3401 this.$_keepHighlighted$ = $JSCompiler_alias_FALSE$$;
3402 var $self$$12$$ = this;
3403 $goog$events$listen$$(this.$_canvas$, $annotorious$events$ui$EventType$MOVE$$, function($event$$15$$) {
3404 if($self$$12$$.$_eventsEnabled$) {
3405 var $topAnnotation$$inline_730$$ = $JSCompiler_StaticMethods_topAnnotationAt$$($self$$12$$, $event$$15$$.offsetX, $event$$15$$.offsetY);
3406 $topAnnotation$$inline_730$$ ? ($self$$12$$.$_keepHighlighted$ = $self$$12$$.$_keepHighlighted$ && $topAnnotation$$inline_730$$ == $self$$12$$.$_currentAnnotation$, $self$$12$$.$_currentAnnotation$ ? $self$$12$$.$_currentAnnotation$ != $topAnnotation$$inline_730$$ && ($self$$12$$.$_eventsEnabled$ = $JSCompiler_alias_FALSE$$, $self$$12$$.$_annotator$.popup.startHideTimer()) : ($self$$12$$.$_currentAnnotation$ = $topAnnotation$$inline_730$$, $JSCompiler_StaticMethods_redraw$$($self$$12$$), $self$$12$$.$_annotator$.fireEvent("onMouseOverAnnotation",
3407 {$annotation$:$self$$12$$.$_currentAnnotation$, mouseEvent:$event$$15$$}))) : !$self$$12$$.$_keepHighlighted$ && $self$$12$$.$_currentAnnotation$ && ($self$$12$$.$_eventsEnabled$ = $JSCompiler_alias_FALSE$$, $self$$12$$.$_annotator$.popup.startHideTimer())
3408 }else {
3409 $self$$12$$.$_cachedMouseEvent$ = $event$$15$$
3410 }
3411 });
3412 $annotator$$26$$.$addHandler$("onMouseOutOfItem", function() {
3413 delete $self$$12$$.$_currentAnnotation$;
3414 $self$$12$$.$_eventsEnabled$ = $JSCompiler_alias_TRUE$$
3415 });
3416 $annotator$$26$$.$addHandler$("beforePopupHide", function() {
3417 if(!$self$$12$$.$_eventsEnabled$ && $self$$12$$.$_cachedMouseEvent$) {
3418 var $previousAnnotation$$ = $self$$12$$.$_currentAnnotation$;
3419 $self$$12$$.$_currentAnnotation$ = $JSCompiler_StaticMethods_topAnnotationAt$$($self$$12$$, $self$$12$$.$_cachedMouseEvent$.offsetX, $self$$12$$.$_cachedMouseEvent$.offsetY);
3420 $self$$12$$.$_eventsEnabled$ = $JSCompiler_alias_TRUE$$;
3421 $previousAnnotation$$ != $self$$12$$.$_currentAnnotation$ ? ($JSCompiler_StaticMethods_redraw$$($self$$12$$), $self$$12$$.$_annotator$.fireEvent("onMouseOutOfAnnotation", {$annotation$:$previousAnnotation$$, mouseEvent:$self$$12$$.$_cachedMouseEvent$}), $self$$12$$.$_annotator$.fireEvent("onMouseOverAnnotation", {$annotation$:$self$$12$$.$_currentAnnotation$, mouseEvent:$self$$12$$.$_cachedMouseEvent$})) : $self$$12$$.$_currentAnnotation$ && $self$$12$$.$_annotator$.popup.clearHideTimer()
3422 }else {
3423 $JSCompiler_StaticMethods_redraw$$($self$$12$$)
3424 }
3425 })
3426}
3427$JSCompiler_prototypeAlias$$ = $annotorious$mediatypes$image$Viewer$$.prototype;
3428$JSCompiler_prototypeAlias$$.$addAnnotation$ = function $$JSCompiler_prototypeAlias$$$$addAnnotation$$($annotation$$11$$, $opt_replace$$2$$) {
3429 $opt_replace$$2$$ && ($opt_replace$$2$$ == this.$_currentAnnotation$ && delete this.$_currentAnnotation$, $goog$array$remove$$(this.$_annotations$, $opt_replace$$2$$), delete this.$_shapes$[$annotorious$shape$hashCode$$($opt_replace$$2$$.shapes[0])]);
3430 this.$_annotations$.push($annotation$$11$$);
3431 var $shape$$8_viewportShape$$ = $annotation$$11$$.shapes[0];
3432 if("pixel" != $shape$$8_viewportShape$$.units) {
3433 var $self$$13$$ = this, $shape$$8_viewportShape$$ = $annotorious$shape$transform$$($shape$$8_viewportShape$$, function($xy$$3$$) {
3434 return $self$$13$$.$_annotator$.$fromItemCoordinates$($xy$$3$$)
3435 })
3436 }
3437 this.$_shapes$[$annotorious$shape$hashCode$$($annotation$$11$$.shapes[0])] = $shape$$8_viewportShape$$;
3438 $JSCompiler_StaticMethods_redraw$$(this)
3439};
3440$JSCompiler_prototypeAlias$$.$removeAnnotation$ = function $$JSCompiler_prototypeAlias$$$$removeAnnotation$$($annotation$$12$$) {
3441 $annotation$$12$$ == this.$_currentAnnotation$ && delete this.$_currentAnnotation$;
3442 $goog$array$remove$$(this.$_annotations$, $annotation$$12$$);
3443 delete this.$_shapes$[$annotorious$shape$hashCode$$($annotation$$12$$.shapes[0])];
3444 $JSCompiler_StaticMethods_redraw$$(this)
3445};
3446$JSCompiler_prototypeAlias$$.$getAnnotations$ = function $$JSCompiler_prototypeAlias$$$$getAnnotations$$() {
3447 return $goog$array$toArray$$(this.$_annotations$)
3448};
3449$JSCompiler_prototypeAlias$$.$highlightAnnotation$ = function $$JSCompiler_prototypeAlias$$$$highlightAnnotation$$($opt_annotation$$1$$) {
3450 (this.$_currentAnnotation$ = $opt_annotation$$1$$) ? this.$_keepHighlighted$ = $JSCompiler_alias_TRUE$$ : this.$_annotator$.popup.startHideTimer();
3451 $JSCompiler_StaticMethods_redraw$$(this);
3452 this.$_eventsEnabled$ = $JSCompiler_alias_TRUE$$
3453};
3454function $JSCompiler_StaticMethods_topAnnotationAt$$($JSCompiler_StaticMethods_topAnnotationAt$self_annotations$$1$$, $px$$2$$, $py$$1$$) {
3455 $JSCompiler_StaticMethods_topAnnotationAt$self_annotations$$1$$ = $JSCompiler_StaticMethods_topAnnotationAt$self_annotations$$1$$.$getAnnotationsAt$($px$$2$$, $py$$1$$);
3456 if(0 < $JSCompiler_StaticMethods_topAnnotationAt$self_annotations$$1$$.length) {
3457 return $JSCompiler_StaticMethods_topAnnotationAt$self_annotations$$1$$[0]
3458 }
3459}
3460$JSCompiler_prototypeAlias$$.$getAnnotationsAt$ = function $$JSCompiler_prototypeAlias$$$$getAnnotationsAt$$($px$$3$$, $py$$2$$) {
3461 var $intersectedAnnotations$$ = [], $self$$14$$ = this;
3462 $goog$array$forEach$$(this.$_annotations$, function($annotation$$13$$) {
3463 var $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$;
3464 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ = $self$$14$$.$_shapes$[$annotorious$shape$hashCode$$($annotation$$13$$.shapes[0])];
3465 if("rect" == $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.type) {
3466 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ = $px$$3$$ < $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.x || $py$$2$$ < $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.y || $px$$3$$ > $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.x + $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.width || $py$$2$$ > $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.y +
3467 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.height ? $JSCompiler_alias_FALSE$$ : $JSCompiler_alias_TRUE$$
3468 }else {
3469 if("polygon" == $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.type) {
3470 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ = $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.points;
3471 for(var $inside$$inline_736$$ = $JSCompiler_alias_FALSE$$, $j$$inline_737$$ = $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.length - 1, $i$$inline_738$$ = 0;$i$$inline_738$$ < $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.length;$i$$inline_738$$++) {
3472 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$i$$inline_738$$].y > $py$$2$$ != $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$j$$inline_737$$].y > $py$$2$$ && $px$$3$$ < ($JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$j$$inline_737$$].x - $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$i$$inline_738$$].x) * ($py$$2$$ - $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$i$$inline_738$$].y) /
3473 ($JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$j$$inline_737$$].y - $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$i$$inline_738$$].y) + $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$i$$inline_738$$].x && ($inside$$inline_736$$ = !$inside$$inline_736$$), $j$$inline_737$$ = $i$$inline_738$$
3474 }
3475 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ = $inside$$inline_736$$
3476 }else {
3477 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ = $JSCompiler_alias_FALSE$$
3478 }
3479 }
3480 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ && $intersectedAnnotations$$.push($annotation$$13$$)
3481 });
3482 $goog$array$ARRAY_PROTOTYPE_$$.sort.call($intersectedAnnotations$$, function($a$$31$$, $b$$26$$) {
3483 var $shape_a$$ = $self$$14$$.$_shapes$[$annotorious$shape$hashCode$$($a$$31$$.shapes[0])], $shape_b$$ = $self$$14$$.$_shapes$[$annotorious$shape$hashCode$$($b$$26$$.shapes[0])];
3484 return $annotorious$shape$getSize$$($shape_a$$) - $annotorious$shape$getSize$$($shape_b$$)
3485 } || $goog$array$defaultCompare$$);
3486 return $intersectedAnnotations$$
3487};
3488function $JSCompiler_StaticMethods__draw$$($JSCompiler_StaticMethods__draw$self$$, $shape$$9$$, $highlight$$1$$) {
3489 var $selector$$4$$ = $goog$array$find$$($JSCompiler_StaticMethods__draw$self$$.$_annotator$.$getAvailableSelectors$(), function($selector$$5$$) {
3490 return $selector$$5$$.getSupportedShapeType() == $shape$$9$$.type
3491 });
3492 $selector$$4$$ ? $selector$$4$$.drawShape($JSCompiler_StaticMethods__draw$self$$.$_g2d$, $shape$$9$$, $highlight$$1$$) : console.log("WARNING unsupported shape type: " + $shape$$9$$.type)
3493}
3494function $JSCompiler_StaticMethods_redraw$$($JSCompiler_StaticMethods_redraw$self$$) {
3495 $JSCompiler_StaticMethods_redraw$self$$.$_g2d$.clearRect(0, 0, $JSCompiler_StaticMethods_redraw$self$$.$_canvas$.width, $JSCompiler_StaticMethods_redraw$self$$.$_canvas$.height);
3496 $goog$array$forEach$$($JSCompiler_StaticMethods_redraw$self$$.$_annotations$, function($annotation$$14$$) {
3497 $annotation$$14$$ != $JSCompiler_StaticMethods_redraw$self$$.$_currentAnnotation$ && $JSCompiler_StaticMethods__draw$$($JSCompiler_StaticMethods_redraw$self$$, $JSCompiler_StaticMethods_redraw$self$$.$_shapes$[$annotorious$shape$hashCode$$($annotation$$14$$.shapes[0])])
3498 });
3499 if($JSCompiler_StaticMethods_redraw$self$$.$_currentAnnotation$) {
3500 var $bbox_shape$$10$$ = $JSCompiler_StaticMethods_redraw$self$$.$_shapes$[$annotorious$shape$hashCode$$($JSCompiler_StaticMethods_redraw$self$$.$_currentAnnotation$.shapes[0])];
3501 $JSCompiler_StaticMethods__draw$$($JSCompiler_StaticMethods_redraw$self$$, $bbox_shape$$10$$, $JSCompiler_alias_TRUE$$);
3502 $bbox_shape$$10$$ = $annotorious$shape$getBoundingRect$$($bbox_shape$$10$$).geometry;
3503 $JSCompiler_StaticMethods_redraw$self$$.$_annotator$.popup.show($JSCompiler_StaticMethods_redraw$self$$.$_currentAnnotation$, new $annotorious$shape$geom$Point$$($bbox_shape$$10$$.x, $bbox_shape$$10$$.y + $bbox_shape$$10$$.height + 5))
3504 }
3505}
3506;var $annotorious$events$ui$hasTouch$$ = "ontouchstart" in window, $annotorious$events$ui$hasMouse$$ = !$annotorious$events$ui$hasTouch$$, $annotorious$events$ui$EventType$DOWN$$ = $annotorious$events$ui$hasTouch$$ ? "touchstart" : "mousedown", $annotorious$events$ui$EventType$OVER$$ = $annotorious$events$ui$hasTouch$$ ? "touchenter" : "mouseover", $annotorious$events$ui$EventType$MOVE$$ = $annotorious$events$ui$hasTouch$$ ? "touchmove" : "mousemove", $annotorious$events$ui$EventType$UP$$ = $annotorious$events$ui$hasTouch$$ ?
3507"touchend" : "mouseup", $annotorious$events$ui$EventType$OUT$$ = $annotorious$events$ui$hasTouch$$ ? "touchleave" : "mouseout";
3508function $annotorious$events$ui$sanitizeCoordinates$$($event$$18$$, $parent$$25$$) {
3509 var $points$$8$$ = $JSCompiler_alias_FALSE$$;
3510 return $points$$8$$ = !$event$$18$$.offsetX || !$event$$18$$.offsetY && $event$$18$$.$event_$.changedTouches ? {x:$event$$18$$.$event_$.changedTouches[0].clientX - $annotorious$dom$getOffset$$($parent$$25$$).left, y:$event$$18$$.$event_$.changedTouches[0].clientY - $annotorious$dom$getOffset$$($parent$$25$$).top} : {x:$event$$18$$.offsetX, y:$event$$18$$.offsetY}
3511}
3512;function $annotorious$plugins$selection$RectDragSelector$$() {
3513}
3514$JSCompiler_prototypeAlias$$ = $annotorious$plugins$selection$RectDragSelector$$.prototype;
3515$JSCompiler_prototypeAlias$$.init = function $$JSCompiler_prototypeAlias$$$init$($annotator$$27$$, $canvas$$1$$) {
3516 this.$_OUTLINE$ = "#000000";
3517 this.$_STROKE$ = "#ffffff";
3518 this.$_FILL$ = $JSCompiler_alias_VOID$$;
3519 this.$_HI_STROKE$ = "#fff000";
3520 this.$_HI_FILL$ = $JSCompiler_alias_VOID$$;
3521 this.$_canvas$ = $canvas$$1$$;
3522 this.$_annotator$ = $annotator$$27$$;
3523 this.$_g2d$ = $canvas$$1$$.getContext("2d");
3524 this.$_g2d$.lineWidth = 1;
3525 this.$_enabled$ = $JSCompiler_alias_FALSE$$
3526};
3527$JSCompiler_prototypeAlias$$.$_attachListeners$ = function $$JSCompiler_prototypeAlias$$$$_attachListeners$$() {
3528 var $self$$17$$ = this, $canvas$$2$$ = this.$_canvas$;
3529 this.$_mouseMoveListener$ = $goog$events$listen$$(this.$_canvas$, $annotorious$events$ui$EventType$MOVE$$, function($event$$19_points$$9_width$$20$$) {
3530 $event$$19_points$$9_width$$20$$ = $annotorious$events$ui$sanitizeCoordinates$$($event$$19_points$$9_width$$20$$, $canvas$$2$$);
3531 if($self$$17$$.$_enabled$) {
3532 $self$$17$$.$_opposite$ = {x:$event$$19_points$$9_width$$20$$.x, y:$event$$19_points$$9_width$$20$$.y};
3533 $self$$17$$.$_g2d$.clearRect(0, 0, $canvas$$2$$.width, $canvas$$2$$.height);
3534 var $event$$19_points$$9_width$$20$$ = $self$$17$$.$_opposite$.x - $self$$17$$.$_anchor$.x, $height$$25$$ = $self$$17$$.$_opposite$.y - $self$$17$$.$_anchor$.y;
3535 $self$$17$$.$_g2d$.strokeStyle = $self$$17$$.$_OUTLINE$;
3536 $self$$17$$.$_g2d$.strokeRect($self$$17$$.$_anchor$.x + 0.5, $self$$17$$.$_anchor$.y + 0.5, $event$$19_points$$9_width$$20$$, $height$$25$$);
3537 $self$$17$$.$_g2d$.strokeStyle = $self$$17$$.$_STROKE$;
3538 0 < $event$$19_points$$9_width$$20$$ && 0 < $height$$25$$ ? $self$$17$$.$_g2d$.strokeRect($self$$17$$.$_anchor$.x + 1.5, $self$$17$$.$_anchor$.y + 1.5, $event$$19_points$$9_width$$20$$ - 2, $height$$25$$ - 2) : 0 < $event$$19_points$$9_width$$20$$ && 0 > $height$$25$$ ? $self$$17$$.$_g2d$.strokeRect($self$$17$$.$_anchor$.x + 1.5, $self$$17$$.$_anchor$.y - 0.5, $event$$19_points$$9_width$$20$$ - 2, $height$$25$$ + 2) : 0 > $event$$19_points$$9_width$$20$$ && 0 > $height$$25$$ ? $self$$17$$.$_g2d$.strokeRect($self$$17$$.$_anchor$.x -
3539 0.5, $self$$17$$.$_anchor$.y - 0.5, $event$$19_points$$9_width$$20$$ + 2, $height$$25$$ + 2) : $self$$17$$.$_g2d$.strokeRect($self$$17$$.$_anchor$.x - 0.5, $self$$17$$.$_anchor$.y + 1.5, $event$$19_points$$9_width$$20$$ + 2, $height$$25$$ - 2)
3540 }
3541 });
3542 this.$_mouseUpListener$ = $goog$events$listen$$($canvas$$2$$, $annotorious$events$ui$EventType$UP$$, function($annotations$$2_event$$20$$) {
3543 var $points$$10$$ = $annotorious$events$ui$sanitizeCoordinates$$($annotations$$2_event$$20$$, $canvas$$2$$), $shape$$11$$ = $self$$17$$.getShape(), $annotations$$2_event$$20$$ = $annotations$$2_event$$20$$.$event_$ ? $annotations$$2_event$$20$$.$event_$ : $annotations$$2_event$$20$$;
3544 $self$$17$$.$_enabled$ = $JSCompiler_alias_FALSE$$;
3545 $shape$$11$$ ? ($self$$17$$.$_detachListeners$(), $self$$17$$.$_annotator$.fireEvent("onSelectionCompleted", {mouseEvent:$annotations$$2_event$$20$$, shape:$shape$$11$$, viewportBounds:$self$$17$$.getViewportBounds()})) : ($self$$17$$.$_annotator$.fireEvent("onSelectionCanceled"), $annotations$$2_event$$20$$ = $self$$17$$.$_annotator$.$getAnnotationsAt$($points$$10$$.x, $points$$10$$.y), 0 < $annotations$$2_event$$20$$.length && $self$$17$$.$_annotator$.$highlightAnnotation$($annotations$$2_event$$20$$[0]))
3546 })
3547};
3548$JSCompiler_prototypeAlias$$.$_detachListeners$ = function $$JSCompiler_prototypeAlias$$$$_detachListeners$$() {
3549 this.$_mouseMoveListener$ && ($goog$events$unlistenByKey$$(this.$_mouseMoveListener$), delete this.$_mouseMoveListener$);
3550 this.$_mouseUpListener$ && ($goog$events$unlistenByKey$$(this.$_mouseUpListener$), delete this.$_mouseUpListener$)
3551};
3552$JSCompiler_prototypeAlias$$.getName = $JSCompiler_returnArg$$("rect_drag");
3553$JSCompiler_prototypeAlias$$.getSupportedShapeType = $JSCompiler_returnArg$$("rect");
3554$JSCompiler_prototypeAlias$$.$setProperties$ = function $$JSCompiler_prototypeAlias$$$$setProperties$$($props$$2$$) {
3555 $props$$2$$.outline && (this.$_OUTLINE$ = $props$$2$$.outline);
3556 $props$$2$$.stroke && (this.$_STROKE$ = $props$$2$$.stroke);
3557 $props$$2$$.fill && (this.$_FILL$ = $props$$2$$.fill);
3558 $props$$2$$.hi_stroke && (this.$_HI_STROKE$ = $props$$2$$.hi_stroke);
3559 $props$$2$$.hi_fill && (this.$_HI_FILL$ = $props$$2$$.hi_fill)
3560};
3561$JSCompiler_prototypeAlias$$.startSelection = function $$JSCompiler_prototypeAlias$$$startSelection$($x$$82$$, $y$$49$$) {
3562 var $startPoint$$2$$ = {x:$x$$82$$, y:$y$$49$$};
3563 this.$_enabled$ = $JSCompiler_alias_TRUE$$;
3564 this.$_attachListeners$($startPoint$$2$$);
3565 this.$_anchor$ = new $annotorious$shape$geom$Point$$($x$$82$$, $y$$49$$);
3566 this.$_annotator$.fireEvent("onSelectionStarted", {offsetX:$x$$82$$, offsetY:$y$$49$$});
3567 $goog$style$setStyle$$(document.body, "-webkit-user-select", "none")
3568};
3569$JSCompiler_prototypeAlias$$.stopSelection = function $$JSCompiler_prototypeAlias$$$stopSelection$() {
3570 this.$_detachListeners$();
3571 this.$_g2d$.clearRect(0, 0, this.$_canvas$.width, this.$_canvas$.height);
3572 $goog$style$setStyle$$(document.body, "-webkit-user-select", "auto");
3573 delete this.$_opposite$
3574};
3575$JSCompiler_prototypeAlias$$.getShape = function $$JSCompiler_prototypeAlias$$$getShape$() {
3576 if(this.$_opposite$ && 3 < Math.abs(this.$_opposite$.x - this.$_anchor$.x) && 3 < Math.abs(this.$_opposite$.y - this.$_anchor$.y)) {
3577 var $item_opposite_viewportBounds$$ = this.getViewportBounds(), $item_anchor$$ = this.$_annotator$.$toItemCoordinates$({x:$item_opposite_viewportBounds$$.left, y:$item_opposite_viewportBounds$$.top}), $item_opposite_viewportBounds$$ = this.$_annotator$.$toItemCoordinates$({x:$item_opposite_viewportBounds$$.right - 1, y:$item_opposite_viewportBounds$$.bottom - 1});
3578 return new $annotorious$shape$Shape$$("rect", new $annotorious$shape$geom$Rectangle$$($item_anchor$$.x, $item_anchor$$.y, $item_opposite_viewportBounds$$.x - $item_anchor$$.x, $item_opposite_viewportBounds$$.y - $item_anchor$$.y))
3579 }
3580};
3581$JSCompiler_prototypeAlias$$.getViewportBounds = function $$JSCompiler_prototypeAlias$$$getViewportBounds$() {
3582 var $right$$12$$, $left$$14$$;
3583 this.$_opposite$.x > this.$_anchor$.x ? ($right$$12$$ = this.$_opposite$.x, $left$$14$$ = this.$_anchor$.x) : ($right$$12$$ = this.$_anchor$.x, $left$$14$$ = this.$_opposite$.x);
3584 var $top$$12$$, $bottom$$8$$;
3585 this.$_opposite$.y > this.$_anchor$.y ? ($top$$12$$ = this.$_anchor$.y, $bottom$$8$$ = this.$_opposite$.y) : ($top$$12$$ = this.$_opposite$.y, $bottom$$8$$ = this.$_anchor$.y);
3586 return{top:$top$$12$$, right:$right$$12$$, bottom:$bottom$$8$$, left:$left$$14$$}
3587};
3588$JSCompiler_prototypeAlias$$.drawShape = function $$JSCompiler_prototypeAlias$$$drawShape$($g2d$$, $geom$$1_shape$$12$$, $highlight$$2_stroke$$) {
3589 var $fill$$;
3590 "rect" == $geom$$1_shape$$12$$.type && ($highlight$$2_stroke$$ ? ($g2d$$.lineWidth = 1.2, $highlight$$2_stroke$$ = this.$_HI_STROKE$, $fill$$ = this.$_HI_FILL$) : ($g2d$$.lineWidth = 1, $highlight$$2_stroke$$ = this.$_STROKE$, $fill$$ = this.$_FILL$), $geom$$1_shape$$12$$ = $geom$$1_shape$$12$$.geometry, $g2d$$.strokeStyle = this.$_OUTLINE$, $g2d$$.strokeRect($geom$$1_shape$$12$$.x + 0.5, $geom$$1_shape$$12$$.y + 0.5, $geom$$1_shape$$12$$.width + 1, $geom$$1_shape$$12$$.height + 1), $g2d$$.strokeStyle =
3591 $highlight$$2_stroke$$, $g2d$$.strokeRect($geom$$1_shape$$12$$.x + 1.5, $geom$$1_shape$$12$$.y + 1.5, $geom$$1_shape$$12$$.width - 1, $geom$$1_shape$$12$$.height - 1), $fill$$ && ($g2d$$.fillStyle = $fill$$, $g2d$$.fillRect($geom$$1_shape$$12$$.x + 1.5, $geom$$1_shape$$12$$.y + 1.5, $geom$$1_shape$$12$$.width - 1, $geom$$1_shape$$12$$.height - 1)))
3592};
3593function $annotorious$templates$image$canvas$$($opt_data$$5$$) {
3594 return'<canvas class="annotorious-item annotorious-opacity-fade" style="position:absolute; top:0px; left:0px; width:' + $soy$$0$0escapeHtml$$($opt_data$$5$$.width) + "px; height:" + $soy$$0$0escapeHtml$$($opt_data$$5$$.height) + 'px; z-index:0" width="' + $soy$$0$0escapeHtml$$($opt_data$$5$$.width) + '" height="' + $soy$$0$0escapeHtml$$($opt_data$$5$$.height) + '"></canvas>'
3595}
3596function $annotorious$templates$image$hint$$($opt_data$$6$$) {
3597 return'<div class="annotorious-hint" style="white-space:nowrap; position:absolute; top:0px; left:0px; pointer-events:none;"><div class="annotorious-hint-msg annotorious-opacity-fade">' + $soy$$0$0escapeHtml$$($opt_data$$6$$.$msg$) + '</div><div class="annotorious-hint-icon" style="pointer-events:auto"></div></div>'
3598}
3599;function $annotorious$mediatypes$image$ImageAnnotator$$($item$$6$$, $opt_popup$$) {
3600 function $transferMargin$$inline_745$$($direction$$inline_748$$, $value$$inline_749$$) {
3601 $goog$style$setStyle$$($annotationLayer$$inline_744$$, "margin-" + $direction$$inline_748$$, $value$$inline_749$$ + "px");
3602 $goog$style$setStyle$$($item$$6$$, "margin-" + $direction$$inline_748$$, 0);
3603 $goog$style$setStyle$$($item$$6$$, "padding-" + $direction$$inline_748$$, 0)
3604 }
3605 this.$_image$ = $item$$6$$;
3606 this.$_original_bufferspace$ = {padding:$item$$6$$.style.padding, margin:$item$$6$$.style.margin};
3607 this.$_eventBroker$ = new $annotorious$events$EventBroker$$;
3608 this.$_selectors$ = [];
3609 this.$_selectionEnabled$ = $JSCompiler_alias_TRUE$$;
3610 this.element = $goog$dom$createDom$$("div", "annotorious-annotationlayer");
3611 $goog$style$setStyle$$(this.element, "position", "relative");
3612 $goog$style$setStyle$$(this.element, "display", "inline-block");
3613 var $annotationLayer$$inline_744$$ = this.element, $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$ = $goog$style$getBox_$$($item$$6$$, "margin"), $padding$$inline_747$$ = $goog$style$getBox_$$($item$$6$$, "padding");
3614 (0 != $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.top || 0 != $padding$$inline_747$$.top) && $transferMargin$$inline_745$$("top", $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.top + $padding$$inline_747$$.top);
3615 (0 != $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.right || 0 != $padding$$inline_747$$.right) && $transferMargin$$inline_745$$("right", $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.right + $padding$$inline_747$$.right);
3616 (0 != $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.bottom || 0 != $padding$$inline_747$$.bottom) && $transferMargin$$inline_745$$("bottom", $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.bottom + $padding$$inline_747$$.bottom);
3617 (0 != $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.left || 0 != $padding$$inline_747$$.left) && $transferMargin$$inline_745$$("left", $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.left + $padding$$inline_747$$.left);
3618 ($default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$ = $item$$6$$.parentNode) && $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.replaceChild(this.element, $item$$6$$);
3619 this.element.appendChild($item$$6$$);
3620 $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$ = $goog$style$getBounds$$($item$$6$$);
3621 this.$_viewCanvas$ = $goog$soy$renderAsElement$$($annotorious$templates$image$canvas$$, {width:$default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.width, height:$default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.height});
3622 $annotorious$events$ui$hasMouse$$ && $goog$dom$classes$add$$(this.$_viewCanvas$, "annotorious-item-unfocus");
3623 this.element.appendChild(this.$_viewCanvas$);
3624 this.$_editCanvas$ = $goog$soy$renderAsElement$$($annotorious$templates$image$canvas$$, {width:$default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.width, height:$default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.height});
3625 $annotorious$events$ui$hasMouse$$ && $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_FALSE$$);
3626 this.element.appendChild(this.$_editCanvas$);
3627 this.popup = $opt_popup$$ ? $opt_popup$$ : new $annotorious$Popup$$(this);
3628 $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$ = new $annotorious$plugins$selection$RectDragSelector$$;
3629 $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.init(this, this.$_editCanvas$);
3630 this.$_selectors$.push($default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$);
3631 this.$_currentSelector$ = $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$;
3632 this.editor = new $annotorious$Editor$$(this);
3633 this.$_viewer$ = new $annotorious$mediatypes$image$Viewer$$(this.$_viewCanvas$, this);
3634 this.$_hint$ = new $annotorious$Hint$$(this, this.element);
3635 var $self$$18$$ = this;
3636 $annotorious$events$ui$hasMouse$$ && ($goog$events$listen$$(this.element, $annotorious$events$ui$EventType$OVER$$, function($event$$21_relatedTarget$$1$$) {
3637 $event$$21_relatedTarget$$1$$ = $event$$21_relatedTarget$$1$$.relatedTarget;
3638 if(!$event$$21_relatedTarget$$1$$ || !$goog$dom$contains$$($self$$18$$.element, $event$$21_relatedTarget$$1$$)) {
3639 $self$$18$$.$_eventBroker$.fireEvent("onMouseOverItem"), $goog$dom$classes$addRemove$$($self$$18$$.$_viewCanvas$, "annotorious-item-unfocus", "annotorious-item-focus")
3640 }
3641 }), $goog$events$listen$$(this.element, $annotorious$events$ui$EventType$OUT$$, function($event$$22_relatedTarget$$2$$) {
3642 $event$$22_relatedTarget$$2$$ = $event$$22_relatedTarget$$2$$.relatedTarget;
3643 if(!$event$$22_relatedTarget$$2$$ || !$goog$dom$contains$$($self$$18$$.element, $event$$22_relatedTarget$$2$$)) {
3644 $self$$18$$.$_eventBroker$.fireEvent("onMouseOutOfItem"), $goog$dom$classes$addRemove$$($self$$18$$.$_viewCanvas$, "annotorious-item-focus", "annotorious-item-unfocus")
3645 }
3646 }));
3647 var $activeCanvas$$ = $annotorious$events$ui$hasTouch$$ ? this.$_editCanvas$ : this.$_viewCanvas$;
3648 $goog$events$listen$$($activeCanvas$$, $annotorious$events$ui$EventType$DOWN$$, function($annotations$$3_coords_event$$23$$) {
3649 $annotations$$3_coords_event$$23$$ = $annotorious$events$ui$sanitizeCoordinates$$($annotations$$3_coords_event$$23$$, $activeCanvas$$);
3650 $self$$18$$.$_viewer$.$highlightAnnotation$($JSCompiler_alias_VOID$$);
3651 $self$$18$$.$_selectionEnabled$ ? ($goog$style$showElement$$($self$$18$$.$_editCanvas$, $JSCompiler_alias_TRUE$$), $self$$18$$.$_currentSelector$.startSelection($annotations$$3_coords_event$$23$$.x, $annotations$$3_coords_event$$23$$.y)) : ($annotations$$3_coords_event$$23$$ = $self$$18$$.$_viewer$.$getAnnotationsAt$($annotations$$3_coords_event$$23$$.x, $annotations$$3_coords_event$$23$$.y), 0 < $annotations$$3_coords_event$$23$$.length && $self$$18$$.$_viewer$.$highlightAnnotation$($annotations$$3_coords_event$$23$$[0]))
3652 });
3653 this.$_eventBroker$.$addHandler$("onSelectionCompleted", function($event$$24$$) {
3654 var $bounds$$ = $event$$24$$.viewportBounds;
3655 $self$$18$$.editor.setPosition(new $annotorious$shape$geom$Point$$($bounds$$.left + $self$$18$$.$_image$.offsetLeft, $bounds$$.bottom + 4 + $self$$18$$.$_image$.offsetTop));
3656 $self$$18$$.editor.open($JSCompiler_alias_VOID$$, $event$$24$$)
3657 });
3658 this.$_eventBroker$.$addHandler$("onSelectionCanceled", function() {
3659 $annotorious$events$ui$hasMouse$$ && $goog$style$showElement$$($self$$18$$.$_editCanvas$, $JSCompiler_alias_FALSE$$);
3660 $self$$18$$.$_currentSelector$.stopSelection()
3661 })
3662}
3663$JSCompiler_prototypeAlias$$ = $annotorious$mediatypes$image$ImageAnnotator$$.prototype;
3664$JSCompiler_prototypeAlias$$.$activateSelector$ = $JSCompiler_emptyFn$$();
3665$JSCompiler_prototypeAlias$$.$addAnnotation$ = function $$JSCompiler_prototypeAlias$$$$addAnnotation$$($annotation$$15$$, $opt_replace$$3$$) {
3666 this.$_viewer$.$addAnnotation$($annotation$$15$$, $opt_replace$$3$$)
3667};
3668$JSCompiler_prototypeAlias$$.$addHandler$ = function $$JSCompiler_prototypeAlias$$$$addHandler$$($type$$84$$, $handler$$12$$) {
3669 this.$_eventBroker$.$addHandler$($type$$84$$, $handler$$12$$)
3670};
3671$JSCompiler_prototypeAlias$$.$addSelector$ = function $$JSCompiler_prototypeAlias$$$$addSelector$$($selector$$6$$) {
3672 $selector$$6$$.init(this, this.$_editCanvas$);
3673 this.$_selectors$.push($selector$$6$$)
3674};
3675$JSCompiler_prototypeAlias$$.$destroy$ = function $$JSCompiler_prototypeAlias$$$$destroy$$() {
3676 var $img$$2$$ = this.$_image$;
3677 $img$$2$$.style.margin = this.$_original_bufferspace$.margin;
3678 $img$$2$$.style.padding = this.$_original_bufferspace$.padding;
3679 var $oldNode$$inline_765$$ = this.element, $parent$$inline_766$$ = $oldNode$$inline_765$$.parentNode;
3680 $parent$$inline_766$$ && $parent$$inline_766$$.replaceChild($img$$2$$, $oldNode$$inline_765$$)
3681};
3682$JSCompiler_prototypeAlias$$.$editAnnotation$ = function $$JSCompiler_prototypeAlias$$$$editAnnotation$$($annotation$$16$$) {
3683 this.$_viewer$.$removeAnnotation$($annotation$$16$$);
3684 var $anchor$$1_bounds$$1_selector$$7$$ = $goog$array$find$$(this.$_selectors$, function($selector$$8$$) {
3685 return $selector$$8$$.getSupportedShapeType() == $annotation$$16$$.shapes[0].type
3686 });
3687 if($anchor$$1_bounds$$1_selector$$7$$) {
3688 $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_TRUE$$);
3689 this.$_viewer$.$highlightAnnotation$($JSCompiler_alias_VOID$$);
3690 var $g2d$$1$$ = this.$_editCanvas$.getContext("2d"), $shape$$13_viewportShape$$1$$ = $annotation$$16$$.shapes[0], $self$$19$$ = this, $shape$$13_viewportShape$$1$$ = "pixel" == $shape$$13_viewportShape$$1$$.units ? $shape$$13_viewportShape$$1$$ : $annotorious$shape$transform$$($shape$$13_viewportShape$$1$$, function($xy$$4$$) {
3691 return $self$$19$$.$fromItemCoordinates$($xy$$4$$)
3692 });
3693 $anchor$$1_bounds$$1_selector$$7$$.drawShape($g2d$$1$$, $shape$$13_viewportShape$$1$$)
3694 }
3695 $anchor$$1_bounds$$1_selector$$7$$ = $annotorious$shape$getBoundingRect$$($annotation$$16$$.shapes[0]).geometry;
3696 $anchor$$1_bounds$$1_selector$$7$$ = "pixel" == $annotation$$16$$.shapes[0].units ? new $annotorious$shape$geom$Point$$($anchor$$1_bounds$$1_selector$$7$$.x, $anchor$$1_bounds$$1_selector$$7$$.y + $anchor$$1_bounds$$1_selector$$7$$.height) : this.$fromItemCoordinates$(new $annotorious$shape$geom$Point$$($anchor$$1_bounds$$1_selector$$7$$.x, $anchor$$1_bounds$$1_selector$$7$$.y + $anchor$$1_bounds$$1_selector$$7$$.height));
3697 this.editor.setPosition(new $annotorious$shape$geom$Point$$($anchor$$1_bounds$$1_selector$$7$$.x + this.$_image$.offsetLeft, $anchor$$1_bounds$$1_selector$$7$$.y + 4 + this.$_image$.offsetTop));
3698 this.editor.open($annotation$$16$$)
3699};
3700$JSCompiler_prototypeAlias$$.fireEvent = function $$JSCompiler_prototypeAlias$$$fireEvent$($type$$85$$, $event$$25$$) {
3701 return this.$_eventBroker$.fireEvent($type$$85$$, $event$$25$$)
3702};
3703$JSCompiler_prototypeAlias$$.$fromItemCoordinates$ = function $$JSCompiler_prototypeAlias$$$$fromItemCoordinates$$($xy$$5$$) {
3704 var $imgSize$$ = $goog$style$getSize$$(this.$_image$);
3705 return{x:$xy$$5$$.x * $imgSize$$.width, y:$xy$$5$$.y * $imgSize$$.height}
3706};
3707$JSCompiler_prototypeAlias$$.$getActiveSelector$ = $JSCompiler_get$$("$_currentSelector$");
3708$JSCompiler_prototypeAlias$$.$getAnnotations$ = function $$JSCompiler_prototypeAlias$$$$getAnnotations$$() {
3709 return this.$_viewer$.$getAnnotations$()
3710};
3711$JSCompiler_prototypeAlias$$.$getAnnotationsAt$ = function $$JSCompiler_prototypeAlias$$$$getAnnotationsAt$$($cx$$, $cy$$) {
3712 return $goog$array$toArray$$(this.$_viewer$.$getAnnotationsAt$($cx$$, $cy$$))
3713};
3714$JSCompiler_prototypeAlias$$.$getAvailableSelectors$ = $JSCompiler_get$$("$_selectors$");
3715$JSCompiler_prototypeAlias$$.getItem = function $$JSCompiler_prototypeAlias$$$getItem$() {
3716 return{src:$annotorious$mediatypes$image$ImageAnnotator$getItemURL$$(this.$_image$)}
3717};
3718function $annotorious$mediatypes$image$ImageAnnotator$getItemURL$$($item$$7$$) {
3719 var $src$$22$$ = $item$$7$$.getAttribute("data-original");
3720 return $src$$22$$ ? $src$$22$$ : $item$$7$$.src
3721}
3722$JSCompiler_prototypeAlias$$.$hideAnnotations$ = function $$JSCompiler_prototypeAlias$$$$hideAnnotations$$() {
3723 $goog$style$showElement$$(this.$_viewCanvas$, $JSCompiler_alias_FALSE$$)
3724};
3725$JSCompiler_prototypeAlias$$.$hideSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$hideSelectionWidget$$() {
3726 this.$_selectionEnabled$ = $JSCompiler_alias_FALSE$$;
3727 this.$_hint$ && (this.$_hint$.$destroy$(), delete this.$_hint$)
3728};
3729$JSCompiler_prototypeAlias$$.$highlightAnnotation$ = function $$JSCompiler_prototypeAlias$$$$highlightAnnotation$$($annotation$$17$$) {
3730 this.$_viewer$.$highlightAnnotation$($annotation$$17$$)
3731};
3732$JSCompiler_prototypeAlias$$.$removeAnnotation$ = function $$JSCompiler_prototypeAlias$$$$removeAnnotation$$($annotation$$18$$) {
3733 this.$_viewer$.$removeAnnotation$($annotation$$18$$)
3734};
3735$JSCompiler_prototypeAlias$$.$removeHandler$ = function $$JSCompiler_prototypeAlias$$$$removeHandler$$($type$$86$$, $handler$$13$$) {
3736 this.$_eventBroker$.$removeHandler$($type$$86$$, $handler$$13$$)
3737};
3738$JSCompiler_prototypeAlias$$.$setCurrentSelector$ = function $$JSCompiler_prototypeAlias$$$$setCurrentSelector$$($selector$$9$$) {
3739 (this.$_currentSelector$ = $goog$array$find$$(this.$_selectors$, function($sel$$) {
3740 return $sel$$.getName() == $selector$$9$$
3741 })) || console.log('WARNING: selector "' + $selector$$9$$ + '" not available')
3742};
3743$JSCompiler_prototypeAlias$$.$setProperties$ = function $$JSCompiler_prototypeAlias$$$$setProperties$$($props$$3$$) {
3744 $goog$array$forEach$$(this.$_selectors$, function($selector$$10$$) {
3745 $selector$$10$$.$setProperties$($props$$3$$)
3746 });
3747 $JSCompiler_StaticMethods_redraw$$(this.$_viewer$)
3748};
3749$JSCompiler_prototypeAlias$$.$showAnnotations$ = function $$JSCompiler_prototypeAlias$$$$showAnnotations$$() {
3750 $goog$style$showElement$$(this.$_viewCanvas$, $JSCompiler_alias_TRUE$$)
3751};
3752$JSCompiler_prototypeAlias$$.$showSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$showSelectionWidget$$() {
3753 this.$_selectionEnabled$ = $JSCompiler_alias_TRUE$$;
3754 this.$_hint$ || (this.$_hint$ = new $annotorious$Hint$$(this, this.element))
3755};
3756$JSCompiler_prototypeAlias$$.stopSelection = function $$JSCompiler_prototypeAlias$$$stopSelection$($opt_original_annotation$$) {
3757 $annotorious$events$ui$hasMouse$$ && $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_FALSE$$);
3758 this.$_currentSelector$.stopSelection();
3759 $opt_original_annotation$$ && this.$_viewer$.$addAnnotation$($opt_original_annotation$$)
3760};
3761$JSCompiler_prototypeAlias$$.$toItemCoordinates$ = function $$JSCompiler_prototypeAlias$$$$toItemCoordinates$$($xy$$6$$) {
3762 var $imgSize$$1$$ = $goog$style$getSize$$(this.$_image$);
3763 return{x:$xy$$6$$.x / $imgSize$$1$$.width, y:$xy$$6$$.y / $imgSize$$1$$.height}
3764};
3765$annotorious$mediatypes$image$ImageAnnotator$$.prototype.addSelector = $annotorious$mediatypes$image$ImageAnnotator$$.prototype.$addSelector$;
3766$annotorious$mediatypes$image$ImageAnnotator$$.prototype.fireEvent = $annotorious$mediatypes$image$ImageAnnotator$$.prototype.fireEvent;
3767$annotorious$mediatypes$image$ImageAnnotator$$.prototype.setCurrentSelector = $annotorious$mediatypes$image$ImageAnnotator$$.prototype.$setCurrentSelector$;
3768$annotorious$mediatypes$image$ImageAnnotator$$.prototype.toItemCoordinates = $annotorious$mediatypes$image$ImageAnnotator$$.prototype.$toItemCoordinates$;
3769function $annotorious$mediatypes$image$ImageModule$$() {
3770 $JSCompiler_StaticMethods__initFields$$(this, function() {
3771 return $query$$inline_154$$("img.annotatable", document)
3772 })
3773}
3774$goog$inherits$$($annotorious$mediatypes$image$ImageModule$$, $annotorious$mediatypes$Module$$);
3775$annotorious$mediatypes$image$ImageModule$$.prototype.$getItemURL$ = function $$annotorious$mediatypes$image$ImageModule$$$$$getItemURL$$($item$$8$$) {
3776 return $annotorious$mediatypes$image$ImageAnnotator$getItemURL$$($item$$8$$)
3777};
3778$annotorious$mediatypes$image$ImageModule$$.prototype.$newAnnotator$ = function $$annotorious$mediatypes$image$ImageModule$$$$$newAnnotator$$($item$$9$$) {
3779 return new $annotorious$mediatypes$image$ImageAnnotator$$($item$$9$$)
3780};
3781$annotorious$mediatypes$image$ImageModule$$.prototype.$supports$ = function $$annotorious$mediatypes$image$ImageModule$$$$$supports$$($item$$10$$) {
3782 return $goog$dom$isElement$$($item$$10$$) ? "IMG" == $item$$10$$.tagName : $JSCompiler_alias_FALSE$$
3783};
3784function $annotorious$templates$openlayers$secondaryHint$$($opt_data$$7$$) {
3785 return'<div class="annotorious-opacity-fade" style="white-space:nowrap; position:absolute; pointer-events:none; top:80px; width:100%; text-align:center;"><div class="annotorious-ol-hint" style="width: 400px; margin:0px auto;">' + $soy$$0$0escapeHtml$$($opt_data$$7$$.$msg$) + "</dvi></div>"
3786}
3787;function $annotorious$mediatypes$openlayers$Viewer$$($map$$10$$, $annotator$$28$$) {
3788 this.$_map$ = $map$$10$$;
3789 this.$_map_bounds$ = $goog$style$getBounds$$($annotator$$28$$.element);
3790 this.$_popup$ = $annotator$$28$$.popup;
3791 $goog$style$setStyle$$(this.$_popup$.element, "z-index", 99E3);
3792 this.$_overlays$ = [];
3793 this.$_boxesLayer$ = new OpenLayers.Layer.Boxes("Annotorious");
3794 this.$_map$.addLayer(this.$_boxesLayer$);
3795 var $self$$20$$ = this;
3796 this.$_map$.events.register("move", this.$_map$, function() {
3797 $self$$20$$.$_currentlyHighlightedOverlay$ && $JSCompiler_StaticMethods__place_popup$$($self$$20$$)
3798 });
3799 $annotator$$28$$.$addHandler$("beforePopupHide", function() {
3800 $self$$20$$.$_lastHoveredOverlay$ == $self$$20$$.$_currentlyHighlightedOverlay$ ? $self$$20$$.$_popup$.clearHideTimer() : $JSCompiler_StaticMethods__updateHighlight$$($self$$20$$, $self$$20$$.$_lastHoveredOverlay$, $self$$20$$.$_currentlyHighlightedOverlay$)
3801 })
3802}
3803function $JSCompiler_StaticMethods__place_popup$$($JSCompiler_StaticMethods__place_popup$self$$) {
3804 var $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$ = $JSCompiler_StaticMethods__place_popup$self$$.$_currentlyHighlightedOverlay$.$marker$.div, $annotation_dim_popup_bounds$$ = $goog$style$getBounds$$($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$), $JSCompiler_object_inline_left_3_annotation_pos$$ = $goog$style$getRelativePosition$$($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$, $JSCompiler_StaticMethods__place_popup$self$$.$_map$.div), $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$ =
3805 $JSCompiler_object_inline_left_3_annotation_pos$$.y, $JSCompiler_object_inline_left_3_annotation_pos$$ = $JSCompiler_object_inline_left_3_annotation_pos$$.x, $JSCompiler_object_inline_width_4$$ = $annotation_dim_popup_bounds$$.width, $JSCompiler_object_inline_height_5$$ = $annotation_dim_popup_bounds$$.height, $annotation_dim_popup_bounds$$ = $goog$style$getBounds$$($JSCompiler_StaticMethods__place_popup$self$$.$_popup$.element), $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$ = {y:$JSCompiler_object_inline_top_2_annotation_div_popup_pos$$ +
3806 $JSCompiler_object_inline_height_5$$ + 5};
3807 $JSCompiler_object_inline_left_3_annotation_pos$$ + $annotation_dim_popup_bounds$$.width > $JSCompiler_StaticMethods__place_popup$self$$.$_map_bounds$.width ? ($goog$dom$classes$addRemove$$($JSCompiler_StaticMethods__place_popup$self$$.$_popup$.element, "top-left", "top-right"), $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x = $JSCompiler_object_inline_left_3_annotation_pos$$ + $JSCompiler_object_inline_width_4$$ - $annotation_dim_popup_bounds$$.width) : ($goog$dom$classes$addRemove$$($JSCompiler_StaticMethods__place_popup$self$$.$_popup$.element,
3808 "top-right", "top-left"), $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x = $JSCompiler_object_inline_left_3_annotation_pos$$);
3809 0 > $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x && ($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x = 0);
3810 $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x + $annotation_dim_popup_bounds$$.width > $JSCompiler_StaticMethods__place_popup$self$$.$_map_bounds$.width && ($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x = $JSCompiler_StaticMethods__place_popup$self$$.$_map_bounds$.width - $annotation_dim_popup_bounds$$.width);
3811 $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.y + $annotation_dim_popup_bounds$$.height > $JSCompiler_StaticMethods__place_popup$self$$.$_map_bounds$.height && ($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.y = $JSCompiler_StaticMethods__place_popup$self$$.$_map_bounds$.height - $annotation_dim_popup_bounds$$.height);
3812 $JSCompiler_StaticMethods__place_popup$self$$.$_popup$.setPosition($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$)
3813}
3814function $JSCompiler_StaticMethods__updateHighlight$$($JSCompiler_StaticMethods__updateHighlight$self$$, $new_highlight$$, $previous_highlight$$) {
3815 $new_highlight$$ ? ($goog$style$getRelativePosition$$($new_highlight$$.$marker$.div, $JSCompiler_StaticMethods__updateHighlight$self$$.$_map$.div), $goog$string$toCamelCase$$("height"), $goog$style$setStyle$$($new_highlight$$.$inner$, "border-color", "#fff000"), $JSCompiler_StaticMethods__updateHighlight$self$$.$_currentlyHighlightedOverlay$ = $new_highlight$$, $JSCompiler_StaticMethods__updateHighlight$self$$.$_popup$.setAnnotation($new_highlight$$.$annotation$), $JSCompiler_StaticMethods__place_popup$$($JSCompiler_StaticMethods__updateHighlight$self$$),
3816 $JSCompiler_StaticMethods__updateHighlight$self$$.$_popup$.show()) : delete $JSCompiler_StaticMethods__updateHighlight$self$$.$_currentlyHighlightedOverlay$;
3817 $previous_highlight$$ && $goog$style$setStyle$$($previous_highlight$$.$inner$, "border-color", "#fff")
3818}
3819$annotorious$mediatypes$openlayers$Viewer$$.prototype.$addAnnotation$ = function $$annotorious$mediatypes$openlayers$Viewer$$$$$addAnnotation$$($annotation$$20$$) {
3820 var $geometry$$1_marker$$ = $annotation$$20$$.shapes[0].geometry, $geometry$$1_marker$$ = new OpenLayers.Marker.Box(new OpenLayers.Bounds($geometry$$1_marker$$.x, $geometry$$1_marker$$.y, $geometry$$1_marker$$.x + $geometry$$1_marker$$.width, $geometry$$1_marker$$.y + $geometry$$1_marker$$.height));
3821 $goog$dom$classes$add$$($geometry$$1_marker$$.div, "annotorious-ol-boxmarker-outer");
3822 $goog$style$setStyle$$($geometry$$1_marker$$.div, "border", $JSCompiler_alias_NULL$$);
3823 var $inner$$ = $goog$dom$createDom$$("div", "annotorious-ol-boxmarker-inner");
3824 $goog$style$setSize$$($inner$$, "100%", "100%");
3825 $geometry$$1_marker$$.div.appendChild($inner$$);
3826 var $overlay$$ = {$annotation$:$annotation$$20$$, $marker$:$geometry$$1_marker$$, $inner$:$inner$$}, $self$$21$$ = this;
3827 $goog$events$listen$$($inner$$, "mouseover", function() {
3828 $self$$21$$.$_currentlyHighlightedOverlay$ || $JSCompiler_StaticMethods__updateHighlight$$($self$$21$$, $overlay$$);
3829 $self$$21$$.$_lastHoveredOverlay$ = $overlay$$
3830 });
3831 $goog$events$listen$$($inner$$, "mouseout", function() {
3832 delete $self$$21$$.$_lastHoveredOverlay$;
3833 $self$$21$$.$_popup$.startHideTimer()
3834 });
3835 this.$_overlays$.push($overlay$$);
3836 $goog$array$ARRAY_PROTOTYPE_$$.sort.call(this.$_overlays$, function($a$$32$$, $b$$27$$) {
3837 return $annotorious$shape$getSize$$($b$$27$$.$annotation$.shapes[0]) - $annotorious$shape$getSize$$($a$$32$$.$annotation$.shapes[0])
3838 } || $goog$array$defaultCompare$$);
3839 var $zIndex$$ = 1E4;
3840 $goog$array$forEach$$(this.$_overlays$, function($overlay$$1$$) {
3841 $goog$style$setStyle$$($overlay$$1$$.$marker$.div, "z-index", $zIndex$$);
3842 $zIndex$$++
3843 });
3844 this.$_boxesLayer$.addMarker($geometry$$1_marker$$)
3845};
3846$annotorious$mediatypes$openlayers$Viewer$$.prototype.$removeAnnotation$ = function $$annotorious$mediatypes$openlayers$Viewer$$$$$removeAnnotation$$($annotation$$21$$) {
3847 var $overlay$$2$$ = $goog$array$find$$(this.$_overlays$, function($overlay$$3$$) {
3848 return $overlay$$3$$.$annotation$ == $annotation$$21$$
3849 });
3850 $overlay$$2$$ && ($goog$array$remove$$(this.$_overlays$, $overlay$$2$$), this.$_boxesLayer$.removeMarker($overlay$$2$$.$marker$))
3851};
3852$annotorious$mediatypes$openlayers$Viewer$$.prototype.$getAnnotations$ = $JSCompiler_emptyFn$$();
3853$annotorious$mediatypes$openlayers$Viewer$$.prototype.$highlightAnnotation$ = function $$annotorious$mediatypes$openlayers$Viewer$$$$$highlightAnnotation$$($opt_annotation$$2$$) {
3854 $opt_annotation$$2$$ || this.$_popup$.startHideTimer()
3855};
3856function $annotorious$mediatypes$openlayers$OpenLayersAnnotator$$($map$$11$$) {
3857 function $updateCanvasSize$$() {
3858 var $width$$21$$ = parseInt($goog$style$getComputedStyle$$($self$$22$$.element, "width"), 10), $height$$27$$ = parseInt($goog$style$getComputedStyle$$($self$$22$$.element, "height"), 10);
3859 $goog$style$setSize$$($self$$22$$.$_editCanvas$, $width$$21$$, $height$$27$$);
3860 $self$$22$$.$_editCanvas$.width = $width$$21$$;
3861 $self$$22$$.$_editCanvas$.height = $height$$27$$
3862 }
3863 this.$_map$ = $map$$11$$;
3864 this.element = $map$$11$$.div;
3865 var $pos$$8$$ = this.element.style[$goog$string$toCamelCase$$("position")] || "";
3866 "absolute" != $pos$$8$$ && "relative" != $pos$$8$$ && $goog$style$setStyle$$(this.element, "position", "relative");
3867 this.$_eventBroker$ = new $annotorious$events$EventBroker$$;
3868 this.$_secondaryHint$ = $goog$soy$renderAsElement$$($annotorious$templates$openlayers$secondaryHint$$, {$msg$:"Click and Drag"});
3869 $goog$style$setStyle$$(this.$_secondaryHint$, "z-index", 9998);
3870 $goog$style$setOpacity$$(this.$_secondaryHint$, 0);
3871 this.element.appendChild(this.$_secondaryHint$);
3872 this.popup = new $annotorious$Popup$$(this);
3873 this.$_viewer$ = new $annotorious$mediatypes$openlayers$Viewer$$($map$$11$$, this);
3874 this.$_editCanvas$ = $goog$soy$renderAsElement$$($annotorious$templates$image$canvas$$, {width:"0", height:"0"});
3875 $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_FALSE$$);
3876 $goog$style$setStyle$$(this.$_editCanvas$, "position", "absolute");
3877 $goog$style$setStyle$$(this.$_editCanvas$, "top", "0px");
3878 $goog$style$setStyle$$(this.$_editCanvas$, "z-index", 9999);
3879 this.element.appendChild(this.$_editCanvas$);
3880 var $self$$22$$ = this;
3881 $updateCanvasSize$$();
3882 this.$_selector$ = new $annotorious$plugins$selection$RectDragSelector$$;
3883 this.$_selector$.init(this, this.$_editCanvas$);
3884 this.$_stop_selection_callback$ = $JSCompiler_alias_VOID$$;
3885 this.editor = new $annotorious$Editor$$(this);
3886 $goog$style$setStyle$$(this.editor.element, "z-index", 1E4);
3887 window.addEventListener ? window.addEventListener("resize", $updateCanvasSize$$, $JSCompiler_alias_FALSE$$) : window.attachEvent && window.attachEvent("onresize", $updateCanvasSize$$);
3888 $goog$events$listen$$(this.element, "mouseover", function($event$$28_relatedTarget$$3$$) {
3889 $event$$28_relatedTarget$$3$$ = $event$$28_relatedTarget$$3$$.relatedTarget;
3890 (!$event$$28_relatedTarget$$3$$ || !$goog$dom$contains$$($self$$22$$.element, $event$$28_relatedTarget$$3$$)) && $self$$22$$.$_eventBroker$.fireEvent("onMouseOverItem")
3891 });
3892 $goog$events$listen$$(this.element, "mouseout", function($event$$29_relatedTarget$$4$$) {
3893 $event$$29_relatedTarget$$4$$ = $event$$29_relatedTarget$$4$$.relatedTarget;
3894 (!$event$$29_relatedTarget$$4$$ || !$goog$dom$contains$$($self$$22$$.element, $event$$29_relatedTarget$$4$$)) && $self$$22$$.$_eventBroker$.fireEvent("onMouseOutOfItem")
3895 });
3896 $goog$events$listen$$(this.$_editCanvas$, "mousedown", function($event$$30$$) {
3897 var $offset$$18$$ = $goog$style$getClientPosition$$($self$$22$$.element);
3898 $self$$22$$.$_selector$.startSelection($event$$30$$.clientX - $offset$$18$$.x, $event$$30$$.clientY - $offset$$18$$.y)
3899 });
3900 this.$_eventBroker$.$addHandler$("onSelectionCompleted", function($bounds$$2_event$$31$$) {
3901 $goog$style$setStyle$$($self$$22$$.$_editCanvas$, "pointer-events", "none");
3902 $bounds$$2_event$$31$$ = $bounds$$2_event$$31$$.viewportBounds;
3903 $self$$22$$.editor.setPosition(new $annotorious$shape$geom$Point$$($bounds$$2_event$$31$$.left, $bounds$$2_event$$31$$.bottom + 4));
3904 $self$$22$$.editor.open()
3905 });
3906 this.$_eventBroker$.$addHandler$("onSelectionCanceled", function() {
3907 $self$$22$$.stopSelection()
3908 })
3909}
3910$JSCompiler_prototypeAlias$$ = $annotorious$mediatypes$openlayers$OpenLayersAnnotator$$.prototype;
3911$JSCompiler_prototypeAlias$$.$showSelectionWidget$ = $JSCompiler_emptyFn$$();
3912$JSCompiler_prototypeAlias$$.$hideSelectionWidget$ = $JSCompiler_emptyFn$$();
3913$JSCompiler_prototypeAlias$$.$activateSelector$ = function $$JSCompiler_prototypeAlias$$$$activateSelector$$($callback$$36$$) {
3914 $goog$style$setStyle$$(this.$_editCanvas$, "pointer-events", "auto");
3915 var $self$$23$$ = this;
3916 $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_TRUE$$);
3917 $goog$style$setOpacity$$(this.$_secondaryHint$, 0.8);
3918 window.setTimeout(function() {
3919 $goog$style$setOpacity$$($self$$23$$.$_secondaryHint$, 0)
3920 }, 2E3);
3921 $callback$$36$$ && (this.$_stop_selection_callback$ = $callback$$36$$)
3922};
3923$JSCompiler_prototypeAlias$$.$editAnnotation$ = function $$JSCompiler_prototypeAlias$$$$editAnnotation$$($annotation$$22$$) {
3924 this.$_viewer$.$removeAnnotation$($annotation$$22$$);
3925 var $selector$$11_viewportBounds$$1$$ = this.$_selector$, $self$$24$$ = this;
3926 if($selector$$11_viewportBounds$$1$$) {
3927 $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_TRUE$$);
3928 this.$_viewer$.$highlightAnnotation$($JSCompiler_alias_VOID$$);
3929 var $g2d$$2$$ = this.$_editCanvas$.getContext("2d"), $viewportShape$$2$$ = $annotorious$shape$transform$$($annotation$$22$$.shapes[0], function($xy$$7$$) {
3930 return $self$$24$$.$fromItemCoordinates$($xy$$7$$)
3931 });
3932 $selector$$11_viewportBounds$$1$$.drawShape($g2d$$2$$, $viewportShape$$2$$);
3933 $selector$$11_viewportBounds$$1$$ = $annotorious$shape$getBoundingRect$$($viewportShape$$2$$).geometry;
3934 this.editor.setPosition(new $annotorious$shape$geom$Point$$($selector$$11_viewportBounds$$1$$.x + this.element.offsetLeft, $selector$$11_viewportBounds$$1$$.y + $selector$$11_viewportBounds$$1$$.height + 4 + this.element.offsetTop));
3935 this.editor.open($annotation$$22$$)
3936 }
3937};
3938$JSCompiler_prototypeAlias$$.$addAnnotation$ = function $$JSCompiler_prototypeAlias$$$$addAnnotation$$($annotation$$23$$) {
3939 this.$_viewer$.$addAnnotation$($annotation$$23$$)
3940};
3941$JSCompiler_prototypeAlias$$.$addHandler$ = function $$JSCompiler_prototypeAlias$$$$addHandler$$($type$$88$$, $handler$$14$$) {
3942 this.$_eventBroker$.$addHandler$($type$$88$$, $handler$$14$$)
3943};
3944$JSCompiler_prototypeAlias$$.$addSelector$ = $JSCompiler_emptyFn$$();
3945$JSCompiler_prototypeAlias$$.fireEvent = function $$JSCompiler_prototypeAlias$$$fireEvent$($type$$89$$, $event$$33$$) {
3946 return this.$_eventBroker$.fireEvent($type$$89$$, $event$$33$$)
3947};
3948$JSCompiler_prototypeAlias$$.$fromItemCoordinates$ = function $$JSCompiler_prototypeAlias$$$$fromItemCoordinates$$($itemCoords_pxCoords$$) {
3949 $itemCoords_pxCoords$$ = this.$_map$.getViewPortPxFromLonLat(new OpenLayers.LonLat($itemCoords_pxCoords$$.x, $itemCoords_pxCoords$$.y));
3950 return{x:$itemCoords_pxCoords$$.x, y:$itemCoords_pxCoords$$.y}
3951};
3952$JSCompiler_prototypeAlias$$.$getActiveSelector$ = $JSCompiler_get$$("$_selector$");
3953$JSCompiler_prototypeAlias$$.$getAnnotations$ = $JSCompiler_emptyFn$$();
3954$JSCompiler_prototypeAlias$$.$getAvailableSelectors$ = $JSCompiler_emptyFn$$();
3955$JSCompiler_prototypeAlias$$.getItem = function $$JSCompiler_prototypeAlias$$$getItem$() {
3956 return{src:"map://openlayers/something"}
3957};
3958$JSCompiler_prototypeAlias$$.$highlightAnnotation$ = function $$JSCompiler_prototypeAlias$$$$highlightAnnotation$$($annotation$$24$$) {
3959 this.$_viewer$.$highlightAnnotation$($annotation$$24$$)
3960};
3961$JSCompiler_prototypeAlias$$.$removeAnnotation$ = function $$JSCompiler_prototypeAlias$$$$removeAnnotation$$($annotation$$25$$) {
3962 this.$_viewer$.$removeAnnotation$($annotation$$25$$)
3963};
3964$JSCompiler_prototypeAlias$$.$removeHandler$ = function $$JSCompiler_prototypeAlias$$$$removeHandler$$($type$$90$$, $handler$$15$$) {
3965 this.$_eventBroker$.$removeHandler$($type$$90$$, $handler$$15$$)
3966};
3967$JSCompiler_prototypeAlias$$.$setActiveSelector$ = $JSCompiler_emptyFn$$();
3968$JSCompiler_prototypeAlias$$.stopSelection = function $$JSCompiler_prototypeAlias$$$stopSelection$($original_annotation$$) {
3969 $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_FALSE$$);
3970 this.$_stop_selection_callback$ && (this.$_stop_selection_callback$(), delete this.$_stop_selection_callback$);
3971 this.$_selector$.stopSelection();
3972 $original_annotation$$ && this.$_viewer$.$addAnnotation$($original_annotation$$)
3973};
3974$JSCompiler_prototypeAlias$$.$toItemCoordinates$ = function $$JSCompiler_prototypeAlias$$$$toItemCoordinates$$($itemCoords$$1_xy$$8$$) {
3975 $itemCoords$$1_xy$$8$$ = this.$_map$.getLonLatFromPixel(new OpenLayers.Pixel($itemCoords$$1_xy$$8$$.x, $itemCoords$$1_xy$$8$$.y));
3976 return{x:$itemCoords$$1_xy$$8$$.lon, y:$itemCoords$$1_xy$$8$$.lat}
3977};
3978function $annotorious$mediatypes$openlayers$OpenLayersModule$$() {
3979 $JSCompiler_StaticMethods__initFields$$(this)
3980}
3981$goog$inherits$$($annotorious$mediatypes$openlayers$OpenLayersModule$$, $annotorious$mediatypes$Module$$);
3982$annotorious$mediatypes$openlayers$OpenLayersModule$$.prototype.$getItemURL$ = $JSCompiler_returnArg$$("map://openlayers/something");
3983$annotorious$mediatypes$openlayers$OpenLayersModule$$.prototype.$newAnnotator$ = function $$annotorious$mediatypes$openlayers$OpenLayersModule$$$$$newAnnotator$$($item$$12$$) {
3984 return new $annotorious$mediatypes$openlayers$OpenLayersAnnotator$$($item$$12$$)
3985};
3986$annotorious$mediatypes$openlayers$OpenLayersModule$$.prototype.$supports$ = function $$annotorious$mediatypes$openlayers$OpenLayersModule$$$$$supports$$($item$$13$$) {
3987 return $item$$13$$ instanceof OpenLayers.Map
3988};
3989function $annotorious$Annotorious$$() {
3990 function $fn$$inline_783$$() {
3991 $goog$array$forEach$$($self$$25$$.$_modules$, function($module$$) {
3992 $module$$.init()
3993 });
3994 $goog$array$forEach$$($self$$25$$.$_plugins$, function($plugin$$3$$) {
3995 $plugin$$3$$.initPlugin && $plugin$$3$$.initPlugin($self$$25$$);
3996 $goog$array$forEach$$($self$$25$$.$_modules$, function($module$$1$$) {
3997 $module$$1$$.$addPlugin$($plugin$$3$$)
3998 })
3999 })
4000 }
4001 this.$_modules$ = [new $annotorious$mediatypes$image$ImageModule$$];
4002 window.OpenLayers && this.$_modules$.push(new $annotorious$mediatypes$openlayers$OpenLayersModule$$);
4003 this.$_plugins$ = [];
4004 var $self$$25$$ = this;
4005 window.addEventListener ? window.addEventListener("load", $fn$$inline_783$$, $JSCompiler_alias_FALSE$$) : window.attachEvent && window.attachEvent("onload", $fn$$inline_783$$)
4006}
4007function $JSCompiler_StaticMethods__getModuleForItemSrc$$($JSCompiler_StaticMethods__getModuleForItemSrc$self$$, $item_src$$1$$) {
4008 return $goog$array$find$$($JSCompiler_StaticMethods__getModuleForItemSrc$self$$.$_modules$, function($module$$2$$) {
4009 return $JSCompiler_StaticMethods_annotatesItem$$($module$$2$$, $item_src$$1$$)
4010 })
4011}
4012$JSCompiler_prototypeAlias$$ = $annotorious$Annotorious$$.prototype;
4013$JSCompiler_prototypeAlias$$.$activateSelector$ = function $$JSCompiler_prototypeAlias$$$$activateSelector$$($opt_item_url_or_callback$$1$$, $opt_callback$$6$$) {
4014 var $item_url$$6$$ = $JSCompiler_alias_VOID$$, $callback$$37$$ = $JSCompiler_alias_VOID$$;
4015 $goog$isString$$($opt_item_url_or_callback$$1$$) ? ($item_url$$6$$ = $opt_item_url_or_callback$$1$$, $callback$$37$$ = $opt_callback$$6$$) : $goog$isFunction$$($opt_item_url_or_callback$$1$$) && ($callback$$37$$ = $opt_item_url_or_callback$$1$$);
4016 if($item_url$$6$$) {
4017 var $module$$3$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $item_url$$6$$);
4018 $module$$3$$ && $module$$3$$.$activateSelector$($item_url$$6$$, $callback$$37$$)
4019 }else {
4020 $goog$array$forEach$$(this.$_modules$, function($module$$4$$) {
4021 $module$$4$$.$activateSelector$($callback$$37$$)
4022 })
4023 }
4024};
4025$JSCompiler_prototypeAlias$$.$addAnnotation$ = function $$JSCompiler_prototypeAlias$$$$addAnnotation$$($annotation$$26$$, $opt_replace$$4$$) {
4026 var $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$;
4027 $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$ = $annotation$$26$$.src;
4028 if(!(0 < $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$.indexOf("://"))) {
4029 var $link$$inline_786$$ = document.createElement("a");
4030 $link$$inline_786$$.href = $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$;
4031 $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$ = $link$$inline_786$$.protocol + "//" + $link$$inline_786$$.host + $link$$inline_786$$.pathname
4032 }
4033 $annotation$$26$$.src = $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$;
4034 ($JSCompiler_inline_result$$24_module$$5_url$$inline_785$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $annotation$$26$$.src)) && $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$.$addAnnotation$($annotation$$26$$, $opt_replace$$4$$)
4035};
4036$JSCompiler_prototypeAlias$$.$addHandler$ = function $$JSCompiler_prototypeAlias$$$$addHandler$$($type$$91$$, $handler$$16$$) {
4037 $goog$array$forEach$$(this.$_modules$, function($module$$6$$) {
4038 $module$$6$$.$addHandler$($type$$91$$, $handler$$16$$)
4039 })
4040};
4041$JSCompiler_prototypeAlias$$.$addPlugin$ = function $$JSCompiler_prototypeAlias$$$$addPlugin$$($plugin_name$$, $opt_config_options$$) {
4042 try {
4043 var $plugin$$4$$ = new window.annotorious.plugin[$plugin_name$$]($opt_config_options$$);
4044 "complete" == document.readyState ? ($plugin$$4$$.initPlugin && $plugin$$4$$.initPlugin(this), $goog$array$forEach$$(this.$_modules$, function($module$$7$$) {
4045 $module$$7$$.$addPlugin$($plugin$$4$$)
4046 })) : this.$_plugins$.push($plugin$$4$$)
4047 }catch($error$$3$$) {
4048 console.log("Could not load plugin: " + $plugin_name$$)
4049 }
4050};
4051$JSCompiler_prototypeAlias$$.$destroy$ = function $$JSCompiler_prototypeAlias$$$$destroy$$($opt_item_url$$8$$) {
4052 if($opt_item_url$$8$$) {
4053 var $module$$8$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$8$$);
4054 $module$$8$$ && $module$$8$$.$destroy$($opt_item_url$$8$$)
4055 }else {
4056 $goog$array$forEach$$(this.$_modules$, function($module$$9$$) {
4057 $module$$9$$.$destroy$()
4058 })
4059 }
4060};
4061$JSCompiler_prototypeAlias$$.$getActiveSelector$ = function $$JSCompiler_prototypeAlias$$$$getActiveSelector$$($item_url$$7$$) {
4062 var $module$$10$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $item_url$$7$$);
4063 if($module$$10$$) {
4064 return $module$$10$$.$getActiveSelector$($item_url$$7$$)
4065 }
4066};
4067$JSCompiler_prototypeAlias$$.$getAnnotations$ = function $$JSCompiler_prototypeAlias$$$$getAnnotations$$($opt_item_url$$9$$) {
4068 if($opt_item_url$$9$$) {
4069 var $module$$11$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$9$$);
4070 return $module$$11$$ ? $module$$11$$.$getAnnotations$($opt_item_url$$9$$) : []
4071 }
4072 var $annotations$$4$$ = [];
4073 $goog$array$forEach$$(this.$_modules$, function($module$$12$$) {
4074 $goog$array$extend$$($annotations$$4$$, $module$$12$$.$getAnnotations$())
4075 });
4076 return $annotations$$4$$
4077};
4078$JSCompiler_prototypeAlias$$.$getAvailableSelectors$ = function $$JSCompiler_prototypeAlias$$$$getAvailableSelectors$$($item_url$$8$$) {
4079 var $module$$13$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $item_url$$8$$);
4080 return $module$$13$$ ? $module$$13$$.$getAvailableSelectors$($item_url$$8$$) : []
4081};
4082$JSCompiler_prototypeAlias$$.$hideAnnotations$ = function $$JSCompiler_prototypeAlias$$$$hideAnnotations$$($opt_item_url$$10$$) {
4083 if($opt_item_url$$10$$) {
4084 var $module$$14$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$10$$);
4085 $module$$14$$ && $module$$14$$.$hideAnnotations$($opt_item_url$$10$$)
4086 }else {
4087 $goog$array$forEach$$(this.$_modules$, function($module$$15$$) {
4088 $module$$15$$.$hideAnnotations$()
4089 })
4090 }
4091};
4092$JSCompiler_prototypeAlias$$.$hideSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$hideSelectionWidget$$($opt_item_url$$11$$) {
4093 if($opt_item_url$$11$$) {
4094 var $module$$16$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$11$$);
4095 $module$$16$$ && $module$$16$$.$hideSelectionWidget$($opt_item_url$$11$$)
4096 }else {
4097 $goog$array$forEach$$(this.$_modules$, function($module$$17$$) {
4098 $module$$17$$.$hideSelectionWidget$()
4099 })
4100 }
4101};
4102$JSCompiler_prototypeAlias$$.$highlightAnnotation$ = function $$JSCompiler_prototypeAlias$$$$highlightAnnotation$$($annotation$$27$$) {
4103 if($annotation$$27$$) {
4104 var $module$$18$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $annotation$$27$$.src);
4105 $module$$18$$ && $module$$18$$.$highlightAnnotation$($annotation$$27$$)
4106 }else {
4107 $goog$array$forEach$$(this.$_modules$, function($module$$19$$) {
4108 $module$$19$$.$highlightAnnotation$()
4109 })
4110 }
4111};
4112$JSCompiler_prototypeAlias$$.$makeAnnotatable$ = function $$JSCompiler_prototypeAlias$$$$makeAnnotatable$$($item$$14$$) {
4113 var $module$$20$$ = $goog$array$find$$(this.$_modules$, function($module$$21$$) {
4114 return $module$$21$$.$supports$($item$$14$$)
4115 });
4116 $module$$20$$ ? $module$$20$$.$makeAnnotatable$($item$$14$$) : $JSCompiler_alias_THROW$$("Error: Annotorious does not support this media type in the current version or build configuration.")
4117};
4118$JSCompiler_prototypeAlias$$.$removeAll$ = function $$JSCompiler_prototypeAlias$$$$removeAll$$($opt_item_url$$12$$) {
4119 var $self$$26$$ = this;
4120 $goog$array$forEach$$(this.$getAnnotations$($opt_item_url$$12$$), function($annotation$$28$$) {
4121 $self$$26$$.$removeAnnotation$($annotation$$28$$)
4122 })
4123};
4124$JSCompiler_prototypeAlias$$.$removeAnnotation$ = function $$JSCompiler_prototypeAlias$$$$removeAnnotation$$($annotation$$29$$) {
4125 var $module$$22$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $annotation$$29$$.src);
4126 $module$$22$$ && $module$$22$$.$removeAnnotation$($annotation$$29$$)
4127};
4128$JSCompiler_prototypeAlias$$.reset = function $$JSCompiler_prototypeAlias$$$reset$() {
4129 $goog$array$forEach$$(this.$_modules$, function($module$$23$$) {
4130 $module$$23$$.$destroy$();
4131 $module$$23$$.init()
4132 })
4133};
4134$JSCompiler_prototypeAlias$$.$setActiveSelector$ = function $$JSCompiler_prototypeAlias$$$$setActiveSelector$$($item_url$$9$$, $selector$$14$$) {
4135 var $module$$24$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $item_url$$9$$);
4136 $module$$24$$ && $module$$24$$.$setActiveSelector$($item_url$$9$$, $selector$$14$$)
4137};
4138$JSCompiler_prototypeAlias$$.$setProperties$ = function $$JSCompiler_prototypeAlias$$$$setProperties$$($props$$4$$) {
4139 $goog$array$forEach$$(this.$_modules$, function($module$$25$$) {
4140 $module$$25$$.$setProperties$($props$$4$$)
4141 })
4142};
4143$JSCompiler_prototypeAlias$$.$setSelectionEnabled$ = function $$JSCompiler_prototypeAlias$$$$setSelectionEnabled$$($enabled$$2$$) {
4144 $enabled$$2$$ ? this.$showSelectionWidget$($JSCompiler_alias_VOID$$) : this.$hideSelectionWidget$($JSCompiler_alias_VOID$$)
4145};
4146$JSCompiler_prototypeAlias$$.$showAnnotations$ = function $$JSCompiler_prototypeAlias$$$$showAnnotations$$($opt_item_url$$13$$) {
4147 if($opt_item_url$$13$$) {
4148 var $module$$26$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$13$$);
4149 $module$$26$$ && $module$$26$$.$showAnnotations$($opt_item_url$$13$$)
4150 }else {
4151 $goog$array$forEach$$(this.$_modules$, function($module$$27$$) {
4152 $module$$27$$.$showAnnotations$()
4153 })
4154 }
4155};
4156$JSCompiler_prototypeAlias$$.$showSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$showSelectionWidget$$($opt_item_url$$14$$) {
4157 if($opt_item_url$$14$$) {
4158 var $module$$28$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$14$$);
4159 $module$$28$$ && $module$$28$$.$showSelectionWidget$($opt_item_url$$14$$)
4160 }else {
4161 $goog$array$forEach$$(this.$_modules$, function($module$$29$$) {
4162 $module$$29$$.$showSelectionWidget$()
4163 })
4164 }
4165};
4166window.anno = new $annotorious$Annotorious$$;
4167$annotorious$Annotorious$$.prototype.activateSelector = $annotorious$Annotorious$$.prototype.$activateSelector$;
4168$annotorious$Annotorious$$.prototype.addAnnotation = $annotorious$Annotorious$$.prototype.$addAnnotation$;
4169$annotorious$Annotorious$$.prototype.addHandler = $annotorious$Annotorious$$.prototype.$addHandler$;
4170$annotorious$Annotorious$$.prototype.addPlugin = $annotorious$Annotorious$$.prototype.$addPlugin$;
4171$annotorious$Annotorious$$.prototype.destroy = $annotorious$Annotorious$$.prototype.$destroy$;
4172$annotorious$Annotorious$$.prototype.getActiveSelector = $annotorious$Annotorious$$.prototype.$getActiveSelector$;
4173$annotorious$Annotorious$$.prototype.getAnnotations = $annotorious$Annotorious$$.prototype.$getAnnotations$;
4174$annotorious$Annotorious$$.prototype.getAvailableSelectors = $annotorious$Annotorious$$.prototype.$getAvailableSelectors$;
4175$annotorious$Annotorious$$.prototype.hideAnnotations = $annotorious$Annotorious$$.prototype.$hideAnnotations$;
4176$annotorious$Annotorious$$.prototype.hideSelectionWidget = $annotorious$Annotorious$$.prototype.$hideSelectionWidget$;
4177$annotorious$Annotorious$$.prototype.highlightAnnotation = $annotorious$Annotorious$$.prototype.$highlightAnnotation$;
4178$annotorious$Annotorious$$.prototype.makeAnnotatable = $annotorious$Annotorious$$.prototype.$makeAnnotatable$;
4179$annotorious$Annotorious$$.prototype.removeAll = $annotorious$Annotorious$$.prototype.$removeAll$;
4180$annotorious$Annotorious$$.prototype.removeAnnotation = $annotorious$Annotorious$$.prototype.$removeAnnotation$;
4181$annotorious$Annotorious$$.prototype.reset = $annotorious$Annotorious$$.prototype.reset;
4182$annotorious$Annotorious$$.prototype.setActiveSelector = $annotorious$Annotorious$$.prototype.$setActiveSelector$;
4183$annotorious$Annotorious$$.prototype.setProperties = $annotorious$Annotorious$$.prototype.$setProperties$;
4184$annotorious$Annotorious$$.prototype.showAnnotations = $annotorious$Annotorious$$.prototype.$showAnnotations$;
4185$annotorious$Annotorious$$.prototype.showSelectionWidget = $annotorious$Annotorious$$.prototype.$showSelectionWidget$;
4186window.annotorious || (window.annotorious = {});
4187window.annotorious.plugin || (window.annotorious.plugin = {});
4188$annotorious$Annotorious$$.prototype.setSelectionEnabled = $annotorious$Annotorious$$.prototype.$setSelectionEnabled$;
  
1function g(a){throw a;}var i=void 0,j=!0,m=null,n=!1;function aa(){return function(){}}function p(a){return function(){return this[a]}}function ba(a){return function(){return a}}var r,s=this;function ca(a,b){var c=a.split("."),d=s;!(c[0]in d)&&d.execScript&&d.execScript("var "+c[0]);for(var f;c.length&&(f=c.shift());)!c.length&&da(b)?d[f]=b:d=d[f]?d[f]:d[f]={}}function ea(){}function fa(a){a.ob=function(){return a.rd?a.rd:a.rd=new a}}
2function ga(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null";
3else if("function"==b&&"undefined"==typeof a.call)return"object";return b}function da(a){return a!==i}function ha(a){return"array"==ga(a)}function ia(a){var b=ga(a);return"array"==b||"object"==b&&"number"==typeof a.length}function t(a){return"string"==typeof a}function u(a){return"function"==ga(a)}function ja(a){var b=typeof a;return"object"==b&&a!=m||"function"==b}function ka(a){return a[la]||(a[la]=++ma)}var la="closure_uid_"+Math.floor(2147483648*Math.random()).toString(36),ma=0;
4function na(a,b,c){return a.call.apply(a.bind,arguments)}function oa(a,b,c){a||g(Error());if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}}function pa(a,b,c){pa=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?na:oa;return pa.apply(m,arguments)}
5function qa(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=Array.prototype.slice.call(arguments);b.unshift.apply(b,c);return a.apply(this,b)}}var ra=Date.now||function(){return+new Date};function v(a,b){function c(){}c.prototype=b.prototype;a.G=b.prototype;a.prototype=new c;a.prototype.constructor=a};function sa(a){return a.replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")}function ta(a){if(!ua.test(a))return a;-1!=a.indexOf("&")&&(a=a.replace(va,"&amp;"));-1!=a.indexOf("<")&&(a=a.replace(wa,"&lt;"));-1!=a.indexOf(">")&&(a=a.replace(xa,"&gt;"));-1!=a.indexOf('"')&&(a=a.replace(ya,"&quot;"));return a}var va=/&/g,wa=/</g,xa=/>/g,ya=/\"/g,ua=/[&<>\"]/;function za(a){return String(a).replace(/\-([a-z])/g,function(a,c){return c.toUpperCase()})};var z=Array.prototype,Aa=z.indexOf?function(a,b,c){return z.indexOf.call(a,b,c)}:function(a,b,c){c=c==m?0:0>c?Math.max(0,a.length+c):c;if(t(a))return!t(b)||1!=b.length?-1:a.indexOf(b,c);for(;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},B=z.forEach?function(a,b,c){z.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,f=t(a)?a.split(""):a,e=0;e<d;e++)e in f&&b.call(c,f[e],e,a)},Ba=z.filter?function(a,b,c){return z.filter.call(a,b,c)}:function(a,b,c){for(var d=a.length,f=[],e=0,h=t(a)?a.split(""):
6a,k=0;k<d;k++)if(k in h){var l=h[k];b.call(c,l,k,a)&&(f[e++]=l)}return f},Ca=z.map?function(a,b,c){return z.map.call(a,b,c)}:function(a,b,c){for(var d=a.length,f=Array(d),e=t(a)?a.split(""):a,h=0;h<d;h++)h in e&&(f[h]=b.call(c,e[h],h,a));return f},Da=z.every?function(a,b,c){return z.every.call(a,b,c)}:function(a,b,c){for(var d=a.length,f=t(a)?a.split(""):a,e=0;e<d;e++)if(e in f&&!b.call(c,f[e],e,a))return n;return j};
7function Ea(a,b){var c;a:{c=a.length;for(var d=t(a)?a.split(""):a,f=0;f<c;f++)if(f in d&&b.call(i,d[f],f,a)){c=f;break a}c=-1}return 0>c?m:t(a)?a.charAt(c):a[c]}function Fa(a,b){return 0<=Aa(a,b)}function C(a,b){var c=Aa(a,b);0<=c&&z.splice.call(a,c,1)}function Ga(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]}
8function Ha(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c],f;if(ha(d)||(f=ia(d))&&d.hasOwnProperty("callee"))a.push.apply(a,d);else if(f)for(var e=a.length,h=d.length,k=0;k<h;k++)a[e+k]=d[k];else a.push(d)}}function Ia(a,b,c){return 2>=arguments.length?z.slice.call(a,b):z.slice.call(a,b,c)}function Ja(a,b){return a>b?1:a<b?-1:0};var Ka,La,Ma,Na,Oa;function Pa(){return s.navigator?s.navigator.userAgent:m}function Qa(){return s.navigator}Na=Ma=La=Ka=n;var Ra;if(Ra=Pa()){var Sa=Qa();Ka=0==Ra.indexOf("Opera");La=!Ka&&-1!=Ra.indexOf("MSIE");Ma=!Ka&&-1!=Ra.indexOf("WebKit");Na=!Ka&&!Ma&&"Gecko"==Sa.product}var D=Ka,F=La,G=Na,H=Ma,Ta=Qa();Oa=-1!=(Ta&&Ta.platform||"").indexOf("Mac");var Ua=!!Qa()&&-1!=(Qa().appVersion||"").indexOf("X11"),Va;
9a:{var Wa="",Xa;if(D&&s.opera)var Ya=s.opera.version,Wa="function"==typeof Ya?Ya():Ya;else if(G?Xa=/rv\:([^\);]+)(\)|;)/:F?Xa=/MSIE\s+([^\);]+)(\)|;)/:H&&(Xa=/WebKit\/(\S+)/),Xa)var Za=Xa.exec(Pa()),Wa=Za?Za[1]:"";if(F){var $a,ab=s.document;$a=ab?ab.documentMode:i;if($a>parseFloat(Wa)){Va=String($a);break a}}Va=Wa}var bb={};
10function I(a){var b;if(!(b=bb[a])){b=0;for(var c=sa(String(Va)).split("."),d=sa(String(a)).split("."),f=Math.max(c.length,d.length),e=0;0==b&&e<f;e++){var h=c[e]||"",k=d[e]||"",l=RegExp("(\\d*)(\\D*)","g"),q=RegExp("(\\d*)(\\D*)","g");do{var w=l.exec(h)||["","",""],y=q.exec(k)||["","",""];if(0==w[0].length&&0==y[0].length)break;b=((0==w[1].length?0:parseInt(w[1],10))<(0==y[1].length?0:parseInt(y[1],10))?-1:(0==w[1].length?0:parseInt(w[1],10))>(0==y[1].length?0:parseInt(y[1],10))?1:0)||((0==w[2].length)<
11(0==y[2].length)?-1:(0==w[2].length)>(0==y[2].length)?1:0)||(w[2]<y[2]?-1:w[2]>y[2]?1:0)}while(0==b)}b=bb[a]=0<=b}return b}var cb={};function db(a){return cb[a]||(cb[a]=F&&!!document.documentMode&&document.documentMode>=a)};var eb,fb=!F||db(9);!G&&!F||F&&db(9)||G&&I("1.9.1");F&&I("9");var gb=F||D||H;function hb(a){a=a.className;return t(a)&&a.match(/\S+/g)||[]}function ib(a,b){var c=hb(a),d=Ia(arguments,1),f=c.length+d.length;jb(c,d);a.className=c.join(" ");return c.length==f}function kb(a,b){var c=hb(a),d=Ia(arguments,1),f=lb(c,d);a.className=f.join(" ");return f.length==c.length-d.length}function jb(a,b){for(var c=0;c<b.length;c++)Fa(a,b[c])||a.push(b[c])}function lb(a,b){return Ba(a,function(a){return!Fa(b,a)})}
12function mb(a,b,c){var d=hb(a);t(b)?C(d,b):ha(b)&&(d=lb(d,b));t(c)&&!Fa(d,c)?d.push(c):ha(c)&&jb(d,c);a.className=d.join(" ")};function J(a,b){this.x=da(a)?a:0;this.y=da(b)?b:0};function nb(a,b){this.width=a;this.height=b}nb.prototype.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};nb.prototype.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};function ob(a,b){for(var c in a)b.call(i,a[c],c,a)}var pb="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function qb(a,b){for(var c,d,f=1;f<arguments.length;f++){d=arguments[f];for(c in d)a[c]=d[c];for(var e=0;e<pb.length;e++)c=pb[e],Object.prototype.hasOwnProperty.call(d,c)&&(a[c]=d[c])}};function rb(a){return a?new sb(K(a)):eb||(eb=new sb)}function tb(a,b){ob(b,function(b,d){"style"==d?a.style.cssText=b:"class"==d?a.className=b:"for"==d?a.htmlFor=b:d in ub?a.setAttribute(ub[d],b):0==d.lastIndexOf("aria-",0)||0==d.lastIndexOf("data-",0)?a.setAttribute(d,b):a[d]=b})}var ub={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",valign:"vAlign",width:"width"};
13function vb(a,b,c){var d=arguments,f=document,e=d[0],h=d[1];if(!fb&&h&&(h.name||h.type)){e=["<",e];h.name&&e.push(' name="',ta(h.name),'"');if(h.type){e.push(' type="',ta(h.type),'"');var k={};qb(k,h);delete k.type;h=k}e.push(">");e=e.join("")}e=f.createElement(e);h&&(t(h)?e.className=h:ha(h)?ib.apply(m,[e].concat(h)):tb(e,h));2<d.length&&wb(f,e,d,2);return e}
14function wb(a,b,c,d){function f(c){c&&b.appendChild(t(c)?a.createTextNode(c):c)}for(;d<c.length;d++){var e=c[d];if(ia(e)&&!(ja(e)&&0<e.nodeType)){var h;a:{if(e&&"number"==typeof e.length){if(ja(e)){h="function"==typeof e.item||"string"==typeof e.item;break a}if(u(e)){h="function"==typeof e.item;break a}}h=n}B(h?Ga(e):e,f)}else f(e)}}function xb(a){for(var b;b=a.firstChild;)a.removeChild(b)}function yb(a){a&&a.parentNode&&a.parentNode.removeChild(a)}function zb(a){return ja(a)&&1==a.nodeType}
15function Ab(a,b){if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||Boolean(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a}function K(a){return 9==a.nodeType?a:a.ownerDocument||a.document}function Bb(a){var b=a.getAttributeNode("tabindex");return b&&b.specified?(a=a.tabIndex,"number"==typeof a&&0<=a&&32768>a):n}function sb(a){this.I=a||s.document||document}r=sb.prototype;r.ed=rb;
16r.c=function(a){return t(a)?this.I.getElementById(a):a};r.Z=tb;r.createElement=function(a){return this.I.createElement(a)};r.createTextNode=function(a){return this.I.createTextNode(a)};function Cb(a){var b=a.I,a=!H?b.documentElement:b.body,b=b.parentWindow||b.defaultView;return new J(b.pageXOffset||a.scrollLeft,b.pageYOffset||a.scrollTop)}r.appendChild=function(a,b){a.appendChild(b)};r.append=function(a,b){wb(K(a),a,arguments,1)};r.contains=Ab;var Db;Db=ba(j);/*
17 Portions of this code are from the Dojo Toolkit, received by
18 The Closure Library Authors under the BSD license. All other code is
19 Copyright 2005-2009 The Closure Library Authors. All Rights Reserved.
20
21The "New" BSD License:
22
23Copyright (c) 2005-2009, The Dojo Foundation
24All rights reserved.
25
26Redistribution and use in source and binary forms, with or without
27modification, are permitted provided that the following conditions are met:
28
29 Redistributions of source code must retain the above copyright notice, this
30 list of conditions and the following disclaimer.
31 Redistributions in binary form must reproduce the above copyright notice,
32 this list of conditions and the following disclaimer in the documentation
33 and/or other materials provided with the distribution.
34 Neither the name of the Dojo Foundation nor the names of its contributors
35 may be used to endorse or promote products derived from this software
36 without specific prior written permission.
37
38THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
39ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
40WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
41DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
42FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
43DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
44SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
45CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
46OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
47OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
48*/
49function Eb(a,b){var c=b||[];a&&c.push(a);return c}var Fb=H&&"BackCompat"==document.compatMode,Gb=document.firstChild.children?"children":"childNodes",Hb=n;
50function Ib(a){function b(){0<=q&&(x.id=c(q,A).replace(/\\/g,""),q=-1);if(0<=w){var a=w==A?m:c(w,A);0>">~+".indexOf(a)?x.D=a:x.Lb=a;w=-1}0<=l&&(x.V.push(c(l+1,A).replace(/\\/g,"")),l=-1)}function c(b,c){return sa(a.slice(b,c))}for(var a=0<=">~+".indexOf(a.slice(-1))?a+" * ":a+" ",d=[],f=-1,e=-1,h=-1,k=-1,l=-1,q=-1,w=-1,y="",E="",Q,A=0,Fe=a.length,x=m,L=m;y=E,E=a.charAt(A),A<Fe;A++)if("\\"!=y)if(x||(Q=A,x={Qa:m,ua:[],xb:[],V:[],D:m,Lb:m,id:m,nc:function(){return Hb?this.Zd:this.D}},w=A),0<=f)if("]"==
51E){L.jc?L.uc=c(h||f+1,A):L.jc=c(f+1,A);if((f=L.uc)&&('"'==f.charAt(0)||"'"==f.charAt(0)))L.uc=f.slice(1,-1);x.xb.push(L);L=m;f=h=-1}else"="==E&&(h=0<="|~^$*".indexOf(y)?y:"",L.type=h+E,L.jc=c(f+1,A-h.length),h=A+1);else 0<=e?")"==E&&(0<=k&&(L.value=c(e+1,A)),k=e=-1):"#"==E?(b(),q=A+1):"."==E?(b(),l=A):":"==E?(b(),k=A):"["==E?(b(),f=A,L={}):"("==E?(0<=k&&(L={name:c(k+1,A),value:m},x.ua.push(L)),e=A):" "==E&&y!=E&&(b(),0<=k&&x.ua.push({name:c(k+1,A)}),x.vd=x.ua.length||x.xb.length||x.V.length,x.qe=
52x.Qa=c(Q,A),x.Zd=x.D=x.Lb?m:x.D||"*",x.D&&(x.D=x.D.toUpperCase()),d.length&&d[d.length-1].Lb&&(x.pd=d.pop(),x.Qa=x.pd.Qa+" "+x.Qa),d.push(x),x=m);return d}function Jb(a,b){return!a?b:!b?a:function(){return a.apply(window,arguments)&&b.apply(window,arguments)}}function Kb(a){return 1==a.nodeType}function Lb(a,b){return!a?"":"class"==b?a.className||"":"for"==b?a.htmlFor||"":"style"==b?a.style.cssText||"":(Hb?a.getAttribute(b):a.getAttribute(b,2))||""}
53var Mb={"*=":function(a,b){return function(c){return 0<=Lb(c,a).indexOf(b)}},"^=":function(a,b){return function(c){return 0==Lb(c,a).indexOf(b)}},"$=":function(a,b){return function(c){c=" "+Lb(c,a);return c.lastIndexOf(b)==c.length-b.length}},"~=":function(a,b){var c=" "+b+" ";return function(b){return 0<=(" "+Lb(b,a)+" ").indexOf(c)}},"|=":function(a,b){b=" "+b;return function(c){c=" "+Lb(c,a);return c==b||0==c.indexOf(b+"-")}},"=":function(a,b){return function(c){return Lb(c,a)==b}}},Nb="undefined"==
54typeof document.firstChild.nextElementSibling,Ob=!Nb?"nextElementSibling":"nextSibling",Pb=!Nb?"previousElementSibling":"previousSibling",Qb=Nb?Kb:Db;function Rb(a){for(;a=a[Pb];)if(Qb(a))return n;return j}function Sb(a){for(;a=a[Ob];)if(Qb(a))return n;return j}function Tb(a){var b=a.parentNode,c=0,d=b[Gb],f=a._i||-1,e=b._l||-1;if(!d)return-1;d=d.length;if(e==d&&0<=f&&0<=e)return f;b._l=d;f=-1;for(b=b.firstElementChild||b.firstChild;b;b=b[Ob])Qb(b)&&(b._i=++c,a===b&&(f=c));return f}
55function Ub(a){return!(Tb(a)%2)}function Vb(a){return Tb(a)%2}
56var Xb={checked:function(){return function(a){return a.checked||a.attributes.checked}},"first-child":function(){return Rb},"last-child":function(){return Sb},"only-child":function(){return function(a){return!Rb(a)||!Sb(a)?n:j}},empty:function(){return function(a){for(var b=a.childNodes,a=a.childNodes.length-1;0<=a;a--){var c=b[a].nodeType;if(1===c||3==c)return n}return j}},contains:function(a,b){var c=b.charAt(0);if('"'==c||"'"==c)b=b.slice(1,-1);return function(a){return 0<=a.innerHTML.indexOf(b)}},
57not:function(a,b){var c=Ib(b)[0],d={A:1};"*"!=c.D&&(d.D=1);c.V.length||(d.V=1);var f=Wb(c,d);return function(a){return!f(a)}},"nth-child":function(a,b){if("odd"==b)return Vb;if("even"==b)return Ub;if(-1!=b.indexOf("n")){var c=b.split("n",2),d=c[0]?"-"==c[0]?-1:parseInt(c[0],10):1,f=c[1]?parseInt(c[1],10):0,e=0,h=-1;0<d?0>f?f=f%d&&d+f%d:0<f&&(f>=d&&(e=f-f%d),f%=d):0>d&&(d*=-1,0<f&&(h=f,f%=d));if(0<d)return function(a){a=Tb(a);return a>=e&&(0>h||a<=h)&&a%d==f};b=f}var k=parseInt(b,10);return function(a){return Tb(a)==
58k}}},Yb=F?function(a){var b=a.toLowerCase();"class"==b&&(a="className");return function(c){return Hb?c.getAttribute(a):c[a]||c[b]}}:function(a){return function(b){return b&&b.getAttribute&&b.hasAttribute(a)}};
59function Wb(a,b){if(!a)return Db;var b=b||{},c=m;b.A||(c=Jb(c,Kb));b.D||"*"!=a.D&&(c=Jb(c,function(b){return b&&b.tagName==a.nc()}));b.V||B(a.V,function(a,b){var e=RegExp("(?:^|\\s)"+a+"(?:\\s|$)");c=Jb(c,function(a){return e.test(a.className)});c.count=b});b.ua||B(a.ua,function(a){var b=a.name;Xb[b]&&(c=Jb(c,Xb[b](b,a.value)))});b.xb||B(a.xb,function(a){var b,e=a.jc;a.type&&Mb[a.type]?b=Mb[a.type](e,a.uc):e.length&&(b=Yb(e));b&&(c=Jb(c,b))});b.id||a.id&&(c=Jb(c,function(b){return!!b&&b.id==a.id}));
60c||"default"in b||(c=Db);return c}var Zb={};
61function $b(a){var b=Zb[a.Qa];if(b)return b;var c=a.pd,c=c?c.Lb:"",d=Wb(a,{A:1}),f="*"==a.D,e=document.getElementsByClassName;if(c)if(e={A:1},f&&(e.D=1),d=Wb(a,e),"+"==c)var h=d,b=function(a,b,c){for(;a=a[Ob];)if(!Nb||Kb(a)){(!c||ac(a,c))&&h(a)&&b.push(a);break}return b};else if("~"==c)var k=d,b=function(a,b,c){for(a=a[Ob];a;){if(Qb(a)){if(c&&!ac(a,c))break;k(a)&&b.push(a)}a=a[Ob]}return b};else{if(">"==c)var l=d,l=l||Db,b=function(a,b,c){for(var d=0,f=a[Gb];a=f[d++];)Qb(a)&&((!c||ac(a,c))&&l(a,d))&&
62b.push(a);return b}}else if(a.id)d=!a.vd&&f?Db:Wb(a,{A:1,id:1}),b=function(b,c){var f=rb(b).c(a.id),e;if(e=f&&d(f))if(!(e=9==b.nodeType)){for(e=f.parentNode;e&&e!=b;)e=e.parentNode;e=!!e}if(e)return Eb(f,c)};else if(e&&/\{\s*\[native code\]\s*\}/.test(String(e))&&a.V.length&&!Fb)var d=Wb(a,{A:1,V:1,id:1}),q=a.V.join(" "),b=function(a,b){for(var c=Eb(0,b),f,e=0,h=a.getElementsByClassName(q);f=h[e++];)d(f,a)&&c.push(f);return c};else!f&&!a.vd?b=function(b,c){for(var d=Eb(0,c),f,e=0,h=b.getElementsByTagName(a.nc());f=
63h[e++];)d.push(f);return d}:(d=Wb(a,{A:1,D:1,id:1}),b=function(b,c){for(var f=Eb(0,c),e,h=0,l=b.getElementsByTagName(a.nc());e=l[h++];)d(e,b)&&f.push(e);return f});return Zb[a.Qa]=b}var bc={},cc={};function dc(a){var b=Ib(sa(a));if(1==b.length){var c=$b(b[0]);return function(a){if(a=c(a,[]))a.Kb=j;return a}}return function(a){for(var a=Eb(a),c,e,h=b.length,k,l,q=0;q<h;q++){l=[];c=b[q];e=a.length-1;0<e&&(k={},l.Kb=j);e=$b(c);for(var w=0;c=a[w];w++)e(c,l,k);if(!l.length)break;a=l}return l}}
64var ec=!!document.querySelectorAll&&(!H||I("526"));
65function fc(a,b){if(ec){var c=cc[a];if(c&&!b)return c}if(c=bc[a])return c;var c=a.charAt(0),d=-1==a.indexOf(" ");0<=a.indexOf("#")&&d&&(b=j);if(ec&&!b&&-1==">~+".indexOf(c)&&(!F||-1==a.indexOf(":"))&&!(Fb&&0<=a.indexOf("."))&&-1==a.indexOf(":contains")&&-1==a.indexOf("|=")){var f=0<=">~+".indexOf(a.charAt(a.length-1))?a+" *":a;return cc[a]=function(b){try{9==b.nodeType||d||g("");var c=b.querySelectorAll(f);F?c.Kd=j:c.Kb=j;return c}catch(e){return fc(a,j)(b)}}}var e=a.split(/\s*,\s*/);return bc[a]=
662>e.length?dc(a):function(a){for(var b=0,c=[],d;d=e[b++];)c=c.concat(dc(d)(a));return c}}var gc=0,hc=F?function(a){return Hb?a.getAttribute("_uid")||a.setAttribute("_uid",++gc)||gc:a.uniqueID}:function(a){return a._uid||(a._uid=++gc)};function ac(a,b){if(!b)return 1;var c=hc(a);return!b[c]?b[c]=1:0}
67function ic(a){if(a&&a.Kb)return a;var b=[];if(!a||!a.length)return b;a[0]&&b.push(a[0]);if(2>a.length)return b;gc++;if(F&&Hb){var c=gc+"";a[0].setAttribute("_zipIdx",c);for(var d=1,f;f=a[d];d++)a[d].getAttribute("_zipIdx")!=c&&b.push(f),f.setAttribute("_zipIdx",c)}else if(F&&a.Kd)try{for(d=1;f=a[d];d++)Kb(f)&&b.push(f)}catch(e){}else{a[0]&&(a[0]._zipIdx=gc);for(d=1;f=a[d];d++)a[d]._zipIdx!=gc&&b.push(f),f._zipIdx=gc}return b}
68function M(a,b){if(!a)return[];if(a.constructor==Array)return a;if(!t(a))return[a];if(t(b)&&(b=t(b)?document.getElementById(b):b,!b))return[];var b=b||document,c=b.ownerDocument||b.documentElement;Hb=b.contentType&&"application/xml"==b.contentType||D&&(b.doctype||"[object XMLDocument]"==c.toString())||!!c&&(F?c.xml:b.xmlVersion||c.xmlVersion);return(c=fc(a)(b))&&c.Kb?c:ic(c)}M.ua=Xb;ca("goog.dom.query",M);ca("goog.dom.query.pseudos",M.ua);var jc=!F||db(9),kc=!F||db(9),lc=F&&!I("9");!H||I("528");G&&I("1.9b")||F&&I("8")||D&&I("9.5")||H&&I("528");G&&!I("8")||F&&I("9");function mc(){0!=nc&&(this.ke=Error().stack,ka(this))}var nc=0;mc.prototype.Zc=n;function oc(a,b){this.type=a;this.currentTarget=this.target=b}r=oc.prototype;r.ta=n;r.defaultPrevented=n;r.Nb=j;r.stopPropagation=function(){this.ta=j};r.preventDefault=function(){this.defaultPrevented=j;this.Nb=n};function pc(a){a.preventDefault()};function qc(a){qc[" "](a);return a}qc[" "]=ea;function rc(a,b){a&&this.init(a,b)}v(rc,oc);var sc=[1,4,2];r=rc.prototype;r.target=m;r.relatedTarget=m;r.offsetX=0;r.offsetY=0;r.clientX=0;r.clientY=0;r.screenX=0;r.screenY=0;r.button=0;r.keyCode=0;r.charCode=0;r.ctrlKey=n;r.altKey=n;r.shiftKey=n;r.metaKey=n;r.yc=n;r.n=m;
69r.init=function(a,b){var c=this.type=a.type;oc.call(this,c);this.target=a.target||a.srcElement;this.currentTarget=b;var d=a.relatedTarget;if(d){if(G){var f;a:{try{qc(d.nodeName);f=j;break a}catch(e){}f=n}f||(d=m)}}else"mouseover"==c?d=a.fromElement:"mouseout"==c&&(d=a.toElement);this.relatedTarget=d;this.offsetX=H||a.offsetX!==i?a.offsetX:a.layerX;this.offsetY=H||a.offsetY!==i?a.offsetY:a.layerY;this.clientX=a.clientX!==i?a.clientX:a.pageX;this.clientY=a.clientY!==i?a.clientY:a.pageY;this.screenX=
70a.screenX||0;this.screenY=a.screenY||0;this.button=a.button;this.keyCode=a.keyCode||0;this.charCode=a.charCode||("keypress"==c?a.keyCode:0);this.ctrlKey=a.ctrlKey;this.altKey=a.altKey;this.shiftKey=a.shiftKey;this.metaKey=a.metaKey;this.yc=Oa?a.metaKey:a.ctrlKey;this.state=a.state;this.n=a;a.defaultPrevented&&this.preventDefault();delete this.ta};function tc(a){return(jc?0==a.n.button:"click"==a.type?j:!!(a.n.button&sc[0]))&&!(H&&Oa&&a.ctrlKey)}
71r.stopPropagation=function(){rc.G.stopPropagation.call(this);this.n.stopPropagation?this.n.stopPropagation():this.n.cancelBubble=j};r.preventDefault=function(){rc.G.preventDefault.call(this);var a=this.n;if(a.preventDefault)a.preventDefault();else if(a.returnValue=n,lc)try{if(a.ctrlKey||112<=a.keyCode&&123>=a.keyCode)a.keyCode=-1}catch(b){}};r.Ld=p("n");function uc(){}var vc=0;r=uc.prototype;r.key=0;r.va=n;r.Uc=n;r.init=function(a,b,c,d,f,e){u(a)?this.ud=j:a&&a.handleEvent&&u(a.handleEvent)?this.ud=n:g(Error("Invalid listener argument"));this.Pa=a;this.zd=b;this.src=c;this.type=d;this.capture=!!f;this.La=e;this.Uc=n;this.key=++vc;this.va=n};r.handleEvent=function(a){return this.ud?this.Pa.call(this.La||this.src,a):this.Pa.handleEvent.call(this.Pa,a)};var wc={},N={},xc={},yc={};
72function O(a,b,c,d,f){if(b){if(ha(b)){for(var e=0;e<b.length;e++)O(a,b[e],c,d,f);return m}var d=!!d,h=N;b in h||(h[b]={m:0,K:0});h=h[b];d in h||(h[d]={m:0,K:0},h.m++);var h=h[d],k=ka(a),l;h.K++;if(h[k]){l=h[k];for(e=0;e<l.length;e++)if(h=l[e],h.Pa==c&&h.La==f){if(h.va)break;return l[e].key}}else l=h[k]=[],h.m++;var q=zc,w=kc?function(a){return q.call(w.src,w.key,a)}:function(a){a=q.call(w.src,w.key,a);if(!a)return a},e=w;e.src=a;h=new uc;h.init(c,e,a,b,d,f);c=h.key;e.key=c;l.push(h);wc[c]=h;xc[k]||
73(xc[k]=[]);xc[k].push(h);a.addEventListener?(a==s||!a.Wc)&&a.addEventListener(b,e,d):a.attachEvent(b in yc?yc[b]:yc[b]="on"+b,e);return c}g(Error("Invalid event type"))}function Ac(a,b,c,d,f){if(ha(b))for(var e=0;e<b.length;e++)Ac(a,b[e],c,d,f);else if(d=!!d,a=Bc(a,b,d))for(e=0;e<a.length;e++)if(a[e].Pa==c&&a[e].capture==d&&a[e].La==f){P(a[e].key);break}}
74function P(a){if(!wc[a])return n;var b=wc[a];if(b.va)return n;var c=b.src,d=b.type,f=b.zd,e=b.capture;c.removeEventListener?(c==s||!c.Wc)&&c.removeEventListener(d,f,e):c.detachEvent&&c.detachEvent(d in yc?yc[d]:yc[d]="on"+d,f);c=ka(c);xc[c]&&(f=xc[c],C(f,b),0==f.length&&delete xc[c]);b.va=j;if(b=N[d][e][c])b.xd=j,Cc(d,e,c,b);delete wc[a];return j}
75function Cc(a,b,c,d){if(!d.Gb&&d.xd){for(var f=0,e=0;f<d.length;f++)d[f].va?d[f].zd.src=m:(f!=e&&(d[e]=d[f]),e++);d.length=e;d.xd=n;0==e&&(delete N[a][b][c],N[a][b].m--,0==N[a][b].m&&(delete N[a][b],N[a].m--),0==N[a].m&&delete N[a])}}function Bc(a,b,c){var d=N;return b in d&&(d=d[b],c in d&&(d=d[c],a=ka(a),d[a]))?d[a]:m}
76function Dc(a,b,c,d,f){var e=1,b=ka(b);if(a[b]){a.K--;a=a[b];a.Gb?a.Gb++:a.Gb=1;try{for(var h=a.length,k=0;k<h;k++){var l=a[k];l&&!l.va&&(e&=Ec(l,f)!==n)}}finally{a.Gb--,Cc(c,d,b,a)}}return Boolean(e)}function Ec(a,b){a.Uc&&P(a.key);return a.handleEvent(b)}
77function zc(a,b){if(!wc[a])return j;var c=wc[a],d=c.type,f=N;if(!(d in f))return j;var f=f[d],e,h;if(!kc){var k;if(!(k=b))a:{k=["window","event"];for(var l=s;e=k.shift();)if(l[e]!=m)l=l[e];else{k=m;break a}k=l}e=k;k=j in f;l=n in f;if(k){if(0>e.keyCode||e.returnValue!=i)return j;a:{var q=n;if(0==e.keyCode)try{e.keyCode=-1;break a}catch(w){q=j}if(q||e.returnValue==i)e.returnValue=j}}q=new rc;q.init(e,this);e=j;try{if(k){for(var y=[],E=q.currentTarget;E;E=E.parentNode)y.push(E);h=f[j];h.K=h.m;for(var Q=
78y.length-1;!q.ta&&0<=Q&&h.K;Q--)q.currentTarget=y[Q],e&=Dc(h,y[Q],d,j,q);if(l){h=f[n];h.K=h.m;for(Q=0;!q.ta&&Q<y.length&&h.K;Q++)q.currentTarget=y[Q],e&=Dc(h,y[Q],d,n,q)}}else e=Ec(c,q)}finally{y&&(y.length=0)}return e}d=new rc(b,this);return e=Ec(c,d)};function Fc(a){mc.call(this);this.md=a;this.h=[]}v(Fc,mc);var Gc=[];function R(a,b,c,d,f){ha(c)||(Gc[0]=c,c=Gc);for(var e=0;e<c.length;e++){var h=O(b,c[e],d||a,f||n,a.md||a);a.h.push(h)}return a}function Hc(a,b,c,d,f,e){if(ha(c))for(var h=0;h<c.length;h++)Hc(a,b,c[h],d,f,e);else{a:{d=d||a;e=e||a.md||a;f=!!f;if(b=Bc(b,c,f))for(c=0;c<b.length;c++)if(!b[c].va&&b[c].Pa==d&&b[c].capture==f&&b[c].La==e){b=b[c];break a}b=m}b&&(b=b.key,P(b),C(a.h,b))}return a}
79Fc.prototype.Mb=function(){B(this.h,P);this.h.length=0};Fc.prototype.handleEvent=function(){g(Error("EventHandler.handleEvent not implemented"))};function Ic(){mc.call(this)}v(Ic,mc);r=Ic.prototype;r.Wc=j;r.xc=m;r.Cc=function(a){this.xc=a};r.addEventListener=function(a,b,c,d){O(this,a,b,c,d)};r.removeEventListener=function(a,b,c,d){Ac(this,a,b,c,d)};
80r.dispatchEvent=function(a){var b=a.type||a,c=N;if(b in c){if(t(a))a=new oc(a,this);else if(a instanceof oc)a.target=a.target||this;else{var d=a,a=new oc(b,this);qb(a,d)}var d=1,f,c=c[b],b=j in c,e;if(b){f=[];for(e=this;e;e=e.xc)f.push(e);e=c[j];e.K=e.m;for(var h=f.length-1;!a.ta&&0<=h&&e.K;h--)a.currentTarget=f[h],d&=Dc(e,f[h],a.type,j,a)&&a.Nb!=n}if(n in c)if(e=c[n],e.K=e.m,b)for(h=0;!a.ta&&h<f.length&&e.K;h++)a.currentTarget=f[h],d&=Dc(e,f[h],a.type,n,a)&&a.Nb!=n;else for(f=this;!a.ta&&f&&e.K;f=
81f.xc)a.currentTarget=f,d&=Dc(e,f,a.type,n,a)&&a.Nb!=n;a=Boolean(d)}else a=j;return a};function Jc(a,b,c,d){this.top=a;this.right=b;this.bottom=c;this.left=d}Jc.prototype.contains=function(a){return!this||!a?n:a instanceof Jc?a.left>=this.left&&a.right<=this.right&&a.top>=this.top&&a.bottom<=this.bottom:a.x>=this.left&&a.x<=this.right&&a.y>=this.top&&a.y<=this.bottom};function Kc(a,b,c,d){this.left=a;this.top=b;this.width=c;this.height=d}Kc.prototype.contains=function(a){return a instanceof Kc?this.left<=a.left&&this.left+this.width>=a.left+a.width&&this.top<=a.top&&this.top+this.height>=a.top+a.height:a.x>=this.left&&a.x<=this.left+this.width&&a.y>=this.top&&a.y<=this.top+this.height};function S(a,b,c){t(b)?Lc(a,c,b):ob(b,qa(Lc,a))}function Lc(a,b,c){a.style[za(c)]=b}function T(a,b){var c=K(a);return c.defaultView&&c.defaultView.getComputedStyle&&(c=c.defaultView.getComputedStyle(a,m))?c[b]||c.getPropertyValue(b)||"":""}function Mc(a,b){return a.currentStyle?a.currentStyle[b]:m}function Nc(a,b){return T(a,b)||Mc(a,b)||a.style&&a.style[b]}function Oc(a,b,c){var d,f=G&&(Oa||Ua)&&I("1.9");b instanceof J?(d=b.x,b=b.y):(d=b,b=c);a.style.left=Pc(d,f);a.style.top=Pc(b,f)}
82function Qc(a){var b=a.getBoundingClientRect();F&&(a=a.ownerDocument,b.left-=a.documentElement.clientLeft+a.body.clientLeft,b.top-=a.documentElement.clientTop+a.body.clientTop);return b}
83function Rc(a){if(F&&!db(8))return a.offsetParent;for(var b=K(a),c=Nc(a,"position"),d="fixed"==c||"absolute"==c,a=a.parentNode;a&&a!=b;a=a.parentNode)if(c=Nc(a,"position"),d=d&&"static"==c&&a!=b.documentElement&&a!=b.body,!d&&(a.scrollWidth>a.clientWidth||a.scrollHeight>a.clientHeight||"fixed"==c||"absolute"==c||"relative"==c))return a;return m}
84function Sc(a){var b,c=K(a),d=Nc(a,"position"),f=G&&c.getBoxObjectFor&&!a.getBoundingClientRect&&"absolute"==d&&(b=c.getBoxObjectFor(a))&&(0>b.screenX||0>b.screenY),e=new J(0,0),h;b=c?K(c):document;if(h=F)if(h=!db(9))rb(b),h=n;h=h?b.body:b.documentElement;if(a==h)return e;if(a.getBoundingClientRect)b=Qc(a),a=Cb(rb(c)),e.x=b.left+a.x,e.y=b.top+a.y;else if(c.getBoxObjectFor&&!f)b=c.getBoxObjectFor(a),a=c.getBoxObjectFor(h),e.x=b.screenX-a.screenX,e.y=b.screenY-a.screenY;else{f=a;do{e.x+=f.offsetLeft;
85e.y+=f.offsetTop;f!=a&&(e.x+=f.clientLeft||0,e.y+=f.clientTop||0);if(H&&"fixed"==Nc(f,"position")){e.x+=c.body.scrollLeft;e.y+=c.body.scrollTop;break}f=f.offsetParent}while(f&&f!=a);if(D||H&&"absolute"==d)e.y-=c.body.offsetTop;for(f=a;(f=Rc(f))&&f!=c.body&&f!=h;)if(e.x-=f.scrollLeft,!D||"TR"!=f.tagName)e.y-=f.scrollTop}return e}function Tc(a,b){var c=Uc(a),d=Uc(b);return new J(c.x-d.x,c.y-d.y)}
86function Uc(a){var b=new J;if(1==a.nodeType){if(a.getBoundingClientRect){var c=Qc(a);b.x=c.left;b.y=c.top}else{var c=Cb(rb(a)),d=Sc(a);b.x=d.x-c.x;b.y=d.y-c.y}if(G&&!I(12)){var f;F?f="-ms-transform":H?f="-webkit-transform":D?f="-o-transform":G&&(f="-moz-transform");var e;f&&(e=Nc(a,f));e||(e=Nc(a,"transform"));e?(a=e.match(Vc),a=!a?new J(0,0):new J(parseFloat(a[1]),parseFloat(a[2]))):a=new J(0,0);b=new J(b.x+a.x,b.y+a.y)}}else f=u(a.Ld),e=a,a.targetTouches?e=a.targetTouches[0]:f&&a.n.targetTouches&&
87(e=a.n.targetTouches[0]),b.x=e.clientX,b.y=e.clientY;return b}function Wc(a,b,c){b instanceof nb?(c=b.height,b=b.width):c==i&&g(Error("missing height argument"));a.style.width=Pc(b,j);a.style.height=Pc(c,j)}function Pc(a,b){"number"==typeof a&&(a=(b?Math.round(a):a)+"px");return a}
88function Xc(a){if("none"!=Nc(a,"display"))return Yc(a);var b=a.style,c=b.display,d=b.visibility,f=b.position;b.visibility="hidden";b.position="absolute";b.display="inline";a=Yc(a);b.display=c;b.position=f;b.visibility=d;return a}function Yc(a){var b=a.offsetWidth,c=a.offsetHeight,d=H&&!b&&!c;return(!da(b)||d)&&a.getBoundingClientRect?(a=Qc(a),new nb(a.right-a.left,a.bottom-a.top)):new nb(b,c)}function Zc(a){var b=Sc(a),a=Xc(a);return new Kc(b.x,b.y,a.width,a.height)}
89function U(a,b){var c=a.style;"opacity"in c?c.opacity=b:"MozOpacity"in c?c.MozOpacity=b:"filter"in c&&(c.filter=""===b?"":"alpha(opacity="+100*b+")")}function V(a,b){a.style.display=b?"":"none"}function $c(a){return"rtl"==Nc(a,"direction")}var ad=G?"MozUserSelect":H?"WebkitUserSelect":m;
90function bd(a,b){if(/^\d+px?$/.test(b))return parseInt(b,10);var c=a.style.left,d=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;a.style.left=b;var f=a.style.pixelLeft;a.style.left=c;a.runtimeStyle.left=d;return f}
91function cd(a,b){if(F){var c=bd(a,Mc(a,b+"Left")),d=bd(a,Mc(a,b+"Right")),f=bd(a,Mc(a,b+"Top")),e=bd(a,Mc(a,b+"Bottom"));return new Jc(f,d,e,c)}c=T(a,b+"Left");d=T(a,b+"Right");f=T(a,b+"Top");e=T(a,b+"Bottom");return new Jc(parseFloat(f),parseFloat(d),parseFloat(e),parseFloat(c))}var dd={thin:2,medium:4,thick:6};function ed(a,b){if("none"==Mc(a,b+"Style"))return 0;var c=Mc(a,b+"Width");return c in dd?dd[c]:bd(a,c)}
92function fd(a){if(F){var b=ed(a,"borderLeft"),c=ed(a,"borderRight"),d=ed(a,"borderTop"),a=ed(a,"borderBottom");return new Jc(d,c,a,b)}b=T(a,"borderLeftWidth");c=T(a,"borderRightWidth");d=T(a,"borderTopWidth");a=T(a,"borderBottomWidth");return new Jc(parseFloat(d),parseFloat(c),parseFloat(a),parseFloat(b))}var Vc=/matrix\([0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, ([0-9\.\-]+)p?x?, ([0-9\.\-]+)p?x?\)/;function gd(a,b,c){mc.call(this);this.target=a;this.handle=b||a;this.sc=c||new Kc(NaN,NaN,NaN,NaN);this.I=K(a);this.fa=new Fc(this);O(this.handle,["touchstart","mousedown"],this.de,n,this)}v(gd,Ic);var hd=F||G&&I("1.9.3");r=gd.prototype;r.clientX=0;r.clientY=0;r.screenX=0;r.screenY=0;r.Cd=0;r.Dd=0;r.Ga=0;r.Ha=0;r.ad=j;r.pa=n;r.od=0;r.Vd=0;r.Sd=n;r.Ec=n;r.Bb=p("fa");function id(a){da(a.ka)||(a.ka=$c(a.target));return a.ka}
93r.de=function(a){var b="mousedown"==a.type;if(this.ad&&!this.pa&&(!b||tc(a))){jd(a);if(0==this.od)if(this.dispatchEvent(new kd("start",this,a.clientX,a.clientY,a)))this.pa=j,a.preventDefault();else return;else a.preventDefault();var b=this.I,c=b.documentElement,d=!hd;R(this.fa,b,["touchmove","mousemove"],this.Qd,d);R(this.fa,b,["touchend","mouseup"],this.zb,d);hd?(c.setCapture(n),R(this.fa,c,"losecapture",this.zb)):R(this.fa,b?b.parentWindow||b.defaultView:window,"blur",this.zb);F&&this.Sd&&R(this.fa,
94b,"dragstart",pc);this.ae&&R(this.fa,this.ae,"scroll",this.Yd,d);this.clientX=this.Cd=a.clientX;this.clientY=this.Dd=a.clientY;this.screenX=a.screenX;this.screenY=a.screenY;this.Ec?(a=this.target,b=a.offsetLeft,c=a.offsetParent,!c&&"fixed"==Nc(a,"position")&&(c=K(a).documentElement),c?(G?(d=fd(c),b+=d.left):db(8)&&(d=fd(c),b-=d.left),a=$c(c)?c.clientWidth-(b+a.offsetWidth):b):a=b):a=this.target.offsetLeft;this.Ga=a;this.Ha=this.target.offsetTop;this.wc=Cb(rb(this.I));this.Vd=ra()}else this.dispatchEvent("earlycancel")};
95r.zb=function(a,b){this.fa.Mb();hd&&this.I.releaseCapture();if(this.pa){jd(a);this.pa=n;var c=ld(this,this.Ga),d=md(this,this.Ha);this.dispatchEvent(new kd("end",this,a.clientX,a.clientY,a,c,d,b||"touchcancel"==a.type))}else this.dispatchEvent("earlycancel");("touchend"==a.type||"touchcancel"==a.type)&&a.preventDefault()};
96function jd(a){var b=a.type;"touchstart"==b||"touchmove"==b?a.init(a.n.targetTouches[0],a.currentTarget):("touchend"==b||"touchcancel"==b)&&a.init(a.n.changedTouches[0],a.currentTarget)}
97r.Qd=function(a){if(this.ad){jd(a);var b=(this.Ec&&id(this)?-1:1)*(a.clientX-this.clientX),c=a.clientY-this.clientY;this.clientX=a.clientX;this.clientY=a.clientY;this.screenX=a.screenX;this.screenY=a.screenY;if(!this.pa){var d=this.Cd-this.clientX,f=this.Dd-this.clientY;if(d*d+f*f>this.od)if(this.dispatchEvent(new kd("start",this,a.clientX,a.clientY,a)))this.pa=j;else{this.Zc||this.zb(a);return}}c=nd(this,b,c);b=c.x;c=c.y;this.pa&&this.dispatchEvent(new kd("beforedrag",this,a.clientX,a.clientY,a,
98b,c))&&(od(this,a,b,c),a.preventDefault())}};function nd(a,b,c){var d=Cb(rb(a.I)),b=b+(d.x-a.wc.x),c=c+(d.y-a.wc.y);a.wc=d;a.Ga+=b;a.Ha+=c;b=ld(a,a.Ga);a=md(a,a.Ha);return new J(b,a)}r.Yd=function(a){var b=nd(this,0,0);a.clientX=this.clientX;a.clientY=this.clientY;od(this,a,b.x,b.y)};function od(a,b,c,d){a.Yc(c,d);a.dispatchEvent(new kd("drag",a,b.clientX,b.clientY,b,c,d))}
99function ld(a,b){var c=a.sc,d=!isNaN(c.left)?c.left:m,c=!isNaN(c.width)?c.width:0;return Math.min(d!=m?d+c:Infinity,Math.max(d!=m?d:-Infinity,b))}function md(a,b){var c=a.sc,d=!isNaN(c.top)?c.top:m,c=!isNaN(c.height)?c.height:0;return Math.min(d!=m?d+c:Infinity,Math.max(d!=m?d:-Infinity,b))}r.Yc=function(a,b){this.Ec&&id(this)?this.target.style.right=a+"px":this.target.style.left=a+"px";this.target.style.top=b+"px"};
100function kd(a,b,c,d,f,e,h,k){oc.call(this,a);this.clientX=c;this.clientY=d;this.ie=f;this.left=da(e)?e:b.Ga;this.top=da(h)?h:b.Ha;this.me=b;this.le=!!k}v(kd,oc);function pd(a){for(var b=0,c=0;a&&!isNaN(a.offsetLeft)&&!isNaN(a.offsetTop);)b+=a.offsetLeft-a.scrollLeft,c+=a.offsetTop-a.scrollTop,a=a.offsetParent;return{top:c,left:b}};function qd(){this.Wa=[]}qd.prototype.k=function(a,b){this.Wa[a]||(this.Wa[a]=[]);this.Wa[a].push(b)};qd.prototype.Ra=function(a,b){var c=this.Wa[a];c&&C(c,b)};qd.prototype.fireEvent=function(a,b){var c=n,d=this.Wa[a];d&&B(d,function(a){a=a(b);da(a)&&!a&&(c=j)});return c};function rd(a,b){this.S={};this.h=[];var c=arguments.length;if(1<c){c%2&&g(Error("Uneven number of arguments"));for(var d=0;d<c;d+=2)this.set(arguments[d],arguments[d+1])}else if(a){var f;if(a instanceof rd)sd(a),f=a.h.concat(),d=W(a);else{var c=[],e=0;for(f in a)c[e++]=f;f=c;c=[];e=0;for(d in a)c[e++]=a[d];d=c}for(c=0;c<f.length;c++)this.set(f[c],d[c])}}r=rd.prototype;r.m=0;r.Fc=0;function W(a){sd(a);for(var b=[],c=0;c<a.h.length;c++)b.push(a.S[a.h[c]]);return b}
101r.clear=function(){this.S={};this.Fc=this.m=this.h.length=0};r.remove=function(a){return td(this.S,a)?(delete this.S[a],this.m--,this.Fc++,this.h.length>2*this.m&&sd(this),j):n};function sd(a){if(a.m!=a.h.length){for(var b=0,c=0;b<a.h.length;){var d=a.h[b];td(a.S,d)&&(a.h[c++]=d);b++}a.h.length=c}if(a.m!=a.h.length){for(var f={},c=b=0;b<a.h.length;)d=a.h[b],td(f,d)||(a.h[c++]=d,f[d]=1),b++;a.h.length=c}}r.get=function(a,b){return td(this.S,a)?this.S[a]:b};
102r.set=function(a,b){td(this.S,a)||(this.m++,this.h.push(a),this.Fc++);this.S[a]=b};function td(a,b){return Object.prototype.hasOwnProperty.call(a,b)};function ud(a,b){this.x=a;this.y=b};function vd(a){this.points=a}function wd(a){for(var b=0,c=a.length-1,d=0;d<a.length;d++)b+=(a[c].x+a[d].x)*(a[c].y-a[d].y),c=d;return b/2}
103function xd(a,b){for(var c,d=c=0,f,e=a.length-1,h=0;h<a.length;h++)f=a[h].x*a[e].y-a[e].x*a[h].y,c+=(a[h].x+a[e].x)*f,d+=(a[h].y+a[e].y)*f,e=h;f=6*wd(a);c=new ud(Math.abs(c/f),Math.abs(d/f));d=[];for(f=0;f<a.length;f++){var e=a[f],k=(0>wd(a)?-1:1)*b,h=e.x-c.x,l=e.y-c.y,q=0<k?1:0>k?-1:0,k=Math.sqrt(Math.pow(k,2)/(1+Math.pow(h/l,2)));d.push({x:e.x+Math.abs(h/l*k)*(0<h?1:0>h?-1:0)*q,y:e.y+Math.abs(k)*(0<l?1:0>l?-1:0)*q})}return d};function yd(a,b,c,d){0<c?(this.x=a,this.width=c):(this.x=a+c,this.width=-c);0<d?(this.y=b,this.height=d):(this.y=b+d,this.height=-d)};function zd(a,b){this.type=a;this.geometry=b}function Ad(a){return"rect"==a.type?a.geometry.width*a.geometry.height:"polygon"==a.type?Math.abs(wd(a.geometry.points)):0}function Bd(a){if("rect"==a.type)return a;if("polygon"==a.type){for(var a=a.geometry.points,b=a[0].x,c=a[0].x,d=a[0].y,f=a[0].y,e=1;e<a.length;e++)a[e].x>c&&(c=a[e].x),a[e].x<b&&(b=a[e].x),a[e].y>f&&(f=a[e].y),a[e].y<d&&(d=a[e].y);return new zd("rect",new yd(b,d,c-b,f-d))}}
104function Cd(a,b){var c;c=a.geometry.points;var d=0>wd(c)?-1:1;if(4>c.length)c=xd(c,d*b);else{for(var f=c.length-1,e=1,h=[],k=0;k<c.length;k++)f=xd([c[f],c[k],c[e]],d*b),h.push(f[1]),f=k,e++,e>c.length-1&&(e=0);c=h}return new zd("polygon",new vd(c))}
105function Dd(a,b){if("rect"==a.type){var c=a.geometry,d=b({x:c.x,y:c.y}),c=b({x:c.x+c.width,y:c.y+c.height});return new zd("rect",new yd(d.x,d.y,c.x-d.x,c.y-d.y))}if("polygon"==a.type){var f=[];B(a.geometry.points,function(a){f.push(b(a))});return new zd("polygon",new vd(f))}}function Ed(a){return JSON.stringify(a.geometry)}window.annotorious||(window.annotorious={});window.annotorious.geometry||(window.annotorious.geometry={},window.annotorious.geometry.expand=Cd);function Fd(a,b,c){this.src=a;this.text=b;this.shapes=[c];this.context=document.URL};function Gd(){}function Hd(a,b){a.g=new rd;a.Kc=[];a.$a=[];a.Ca=[];a.ya=[];a.Vb=[];a.rb={Na:n,Ma:n};a.za=new rd;a.Xb=i;a.Rc=b}function Id(a,b){var c=a.za.get(b);c||(c={Na:n,Ma:n},a.za.set(b,c));return c}
106function Jd(a,b){var c=a.mc(b);if(!a.g.get(c)){var d=a.yd(b),f=[],e=[];B(a.Kc,function(a){d.k(a.type,a.La)});B(a.$a,function(a){if(a.onInitAnnotator)a.onInitAnnotator(d)});B(a.ya,function(a){a.src==c&&(d.z(a),f.push(a))});B(a.Vb,function(a){a.src==c&&(d.w(a),e.push(a))});B(f,function(b){C(a.ya,b)});B(e,function(b){C(a.Vb,b)});var h=a.za.get(c);h?(h.Na&&d.O(),h.Ma&&d.X(),a.za.remove(c)):(a.rb.Na&&d.O(),a.rb.Ma&&d.X());a.Xb&&d.Z(a.Xb);a.g.set(c,d);C(a.Ca,b)}}
107function Kd(a){var b,c;for(c=a.Ca.length;0<c;c--){for(var d=b=a.Ca[c-1],f=d.offsetTop,e=d.offsetLeft,h=d.offsetWidth,k=d.offsetHeight;d.offsetParent;)d=d.offsetParent,f+=d.offsetTop,e+=d.offsetLeft;f<window.pageYOffset+window.innerHeight&&(e<window.pageXOffset+window.innerWidth&&f+k>window.pageYOffset&&e+h>window.pageXOffset)&&Jd(a,b)}}function Ld(a,b,c){if(b){var d=a.g.get(b);d?c?d.wa():d.X():Id(a,b).Ma=c}else B(W(a.g),function(a){c?a.wa():a.X()}),a.rb.Ma=!c,B(W(a.za),function(a){a.Ma=!c})}
108function Md(a,b,c){if(b){var d=a.g.get(b);d?c?d.$():d.O():Id(a,b).Na=c}else B(W(a.g),function(a){c?a.$():a.O()}),a.rb.Na=!c,B(W(a.za),function(a){a.Na=!c})}r=Gd.prototype;r.ea=function(a,b){var c=i,d=i;t(a)?(c=a,d=b):u(a)&&(d=a);c?(c=this.g.get(c))&&c.ea(d):B(W(this.g),function(a){a.ea(d)})};r.z=function(a,b){if(Nd(this,a.src)){var c=this.g.get(a.src);c?c.z(a,b):(this.ya.push(a),b&&C(this.ya,b))}};r.k=function(a,b){B(W(this.g),function(c){c.k(a,b)});this.Kc.push({type:a,La:b})};
109r.wb=function(a){this.$a.push(a);B(W(this.g),function(b){if(a.onInitAnnotator)a.onInitAnnotator(b)})};function Nd(a,b){return td(a.g.S,b)?j:Ea(a.Ca,function(c){return a.mc(c)==b})!=m}r.R=function(a){a?(a=this.g.get(a))&&a.R():(B(W(this.g),function(a){a.R()}),this.g.clear())};r.qa=function(a){if(Nd(this,a)&&(a=this.g.get(a)))return a.qa().getName()};
110r.J=function(a){if(a){var b=this.g.get(a);return b?b.J():Ba(this.ya,function(b){return b.src==a})}var c=[];B(W(this.g),function(a){Ha(c,a.J())});Ha(c,this.ya);return c};r.ra=function(a){if(Nd(this,a)&&(a=this.g.get(a)))return Ca(a.ra(),function(a){return a.getName()})};r.X=function(a){Ld(this,a,n)};r.O=function(a){Md(this,a,n)};r.r=function(a){if(a){if(Nd(this,a.src)){var b=this.g.get(a.src);b&&b.r(a)}}else B(W(this.g),function(a){a.r()})};
111r.init=function(){this.Rc&&Ha(this.Ca,this.Rc());Kd(this);var a=this,b=O(window,"scroll",function(){0<a.Ca.length?Kd(a):P(b)})};r.tc=function(a){this.Dc(a)&&Jd(this,a)};r.w=function(a){if(Nd(this,a.src)){var b=this.g.get(a.src);b?b.w(a):this.Vb.push(a)}};r.qb=function(a,b){if(Nd(this,a)){var c=this.g.get(a);c&&c.qb(b)}};r.Z=function(a){this.Xb=a;B(W(this.g),function(b){b.Z(a)})};r.wa=function(a){Ld(this,a,j)};r.$=function(a){Md(this,a,j)};function Od(a,b){var c=rb().createElement("DIV");c.innerHTML=a(b||Pd,i,i);if(1==c.childNodes.length){var d=c.firstChild;if(1==d.nodeType)return d}return c}var Pd={};function Qd(a,b){a!=m&&this.append.apply(this,arguments)}r=Qd.prototype;r.oa="";r.set=function(a){this.oa=""+a};r.append=function(a,b,c){this.oa+=a;if(b!=m)for(var d=1;d<arguments.length;d++)this.oa+=arguments[d];return this};r.clear=function(){this.oa=""};r.toString=p("oa");/*
112 Portions of this code are from the google-caja project, received by
113 Google under the Apache license (http://code.google.com/p/google-caja/).
114 All other code is Copyright 2009 Google, Inc. All Rights Reserved.
115
116// Copyright (C) 2006 Google Inc.
117//
118// Licensed under the Apache License, Version 2.0 (the "License");
119// you may not use this file except in compliance with the License.
120// You may obtain a copy of the License at
121//
122// http://www.apache.org/licenses/LICENSE-2.0
123//
124// Unless required by applicable law or agreed to in writing, software
125// distributed under the License is distributed on an "AS IS" BASIS,
126// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
127// See the License for the specific language governing permissions and
128// limitations under the License.
129
130*/
131function Rd(){}
132var Sd={oe:"<",ne:">",ge:"&",pe:"\u00a0",re:'"',he:"'"},Td={a:0,abbr:0,acronym:0,address:0,applet:16,area:2,b:0,base:18,basefont:18,bdo:0,big:0,blockquote:0,body:49,br:2,button:0,caption:0,center:0,cite:0,code:0,col:2,colgroup:1,dd:1,del:0,dfn:0,dir:0,div:0,dl:0,dt:1,em:0,fieldset:0,font:0,form:0,frame:18,frameset:16,h1:0,h2:0,h3:0,h4:0,h5:0,h6:0,head:49,hr:2,html:49,i:0,iframe:20,img:2,input:2,ins:0,isindex:18,kbd:0,label:0,legend:0,li:1,link:18,map:0,menu:0,meta:18,noframes:20,noscript:20,object:16,
133ol:0,optgroup:0,option:1,p:1,param:18,pre:0,q:0,s:0,samp:0,script:20,select:0,small:0,span:0,strike:0,strong:0,style:20,sub:0,sup:0,table:0,tbody:1,td:1,textarea:8,tfoot:1,th:1,thead:1,title:24,tr:1,tt:0,u:0,ul:0,"var":0},Ud=/&/g,Vd=/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi,Wd=/</g,Xd=/>/g,Yd=/\"/g,Zd=/=/g,$d=/\0/g,ae=/&(#\d+|#x[0-9A-Fa-f]+|\w+);/g,be=/^#(\d+)$/,ce=/^#x([0-9A-Fa-f]+)$/,de=RegExp("^\\s*(?:(?:([a-z][a-z-]*)(\\s*=\\s*(\"[^\"]*\"|'[^']*'|(?=[a-z][a-z-]*\\s*=)|[^>\"'\\s]*))?)|(/?>)|[^a-z\\s>]+)",
134"i"),ee=RegExp("^(?:&(\\#[0-9]+|\\#[x][0-9a-f]+|\\w+);|<[!]--[\\s\\S]*?--\>|<!\\w[^>]*>|<\\?[^>*]*>|<(/)?([a-z][a-z0-9]*)|([^<&>]+)|([<&>]))","i");
135Rd.prototype.parse=function(a,b){var c=m,d=n,f=[],e,h,k;a.M=[];for(a.ha=n;b;){var l=b.match(d?de:ee),b=b.substring(l[0].length);if(d)if(l[1]){var q=l[1].toLowerCase();if(l[2]){l=l[3];switch(l.charCodeAt(0)){case 34:case 39:l=l.substring(1,l.length-1)}l=l.replace($d,"").replace(ae,pa(this.Td,this))}else l=q;f.push(q,l)}else l[4]&&(h!==i&&(k?a.Bd&&a.Bd(e,f):a.bd&&a.bd(e)),k&&h&12&&(c=c===m?b.toLowerCase():c.substring(c.length-b.length),d=c.indexOf("</"+e),0>d&&(d=b.length),h&4?a.Vc&&a.Vc(b.substring(0,
136d)):a.Ad&&a.Ad(b.substring(0,d).replace(Vd,"&amp;$1").replace(Wd,"&lt;").replace(Xd,"&gt;")),b=b.substring(d)),e=h=k=i,f.length=0,d=n);else if(l[1])fe(a,l[0]);else if(l[3])k=!l[2],d=j,e=l[3].toLowerCase(),h=Td.hasOwnProperty(e)?Td[e]:i;else if(l[4])fe(a,l[4]);else if(l[5])switch(l[5]){case "<":fe(a,"&lt;");break;case ">":fe(a,"&gt;");break;default:fe(a,"&amp;")}}for(c=a.M.length;0<=--c;)a.aa.append("</",a.M[c],">");a.M.length=0};
137Rd.prototype.Td=function(a){a=a.toLowerCase();if(Sd.hasOwnProperty(a))return Sd[a];var b=a.match(be);return b?String.fromCharCode(parseInt(b[1],10)):(b=a.match(ce))?String.fromCharCode(parseInt(b[1],16)):""};function ge(){};/*
138 Portions of this code are from the google-caja project, received by
139 Google under the Apache license (http://code.google.com/p/google-caja/).
140 All other code is Copyright 2009 Google, Inc. All Rights Reserved.
141
142// Copyright (C) 2006 Google Inc.
143//
144// Licensed under the Apache License, Version 2.0 (the "License");
145// you may not use this file except in compliance with the License.
146// You may obtain a copy of the License at
147//
148// http://www.apache.org/licenses/LICENSE-2.0
149//
150// Unless required by applicable law or agreed to in writing, software
151// distributed under the License is distributed on an "AS IS" BASIS,
152// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
153// See the License for the specific language governing permissions and
154// limitations under the License.
155
156*/
157function he(a,b,c){this.aa=a;this.M=[];this.ha=n;this.Fd=b;this.Jb=c}v(he,ge);
158var ie={"*::class":9,"*::dir":0,"*::id":4,"*::lang":0,"*::onclick":2,"*::ondblclick":2,"*::onkeydown":2,"*::onkeypress":2,"*::onkeyup":2,"*::onload":2,"*::onmousedown":2,"*::onmousemove":2,"*::onmouseout":2,"*::onmouseover":2,"*::onmouseup":2,"*::style":3,"*::title":0,"*::accesskey":0,"*::tabindex":0,"*::onfocus":2,"*::onblur":2,"a::coords":0,"a::href":1,"a::hreflang":0,"a::name":7,"a::onblur":2,"a::rel":0,"a::rev":0,"a::shape":0,"a::target":10,"a::type":0,"area::accesskey":0,"area::alt":0,"area::coords":0,
159"area::href":1,"area::nohref":0,"area::onfocus":2,"area::shape":0,"area::tabindex":0,"area::target":10,"bdo::dir":0,"blockquote::cite":1,"br::clear":0,"button::accesskey":0,"button::disabled":0,"button::name":8,"button::onblur":2,"button::onfocus":2,"button::tabindex":0,"button::type":0,"button::value":0,"caption::align":0,"col::align":0,"col::char":0,"col::charoff":0,"col::span":0,"col::valign":0,"col::width":0,"colgroup::align":0,"colgroup::char":0,"colgroup::charoff":0,"colgroup::span":0,"colgroup::valign":0,
160"colgroup::width":0,"del::cite":1,"del::datetime":0,"dir::compact":0,"div::align":0,"dl::compact":0,"font::color":0,"font::face":0,"font::size":0,"form::accept":0,"form::action":1,"form::autocomplete":0,"form::enctype":0,"form::method":0,"form::name":7,"form::onreset":2,"form::onsubmit":2,"form::target":10,"h1::align":0,"h2::align":0,"h3::align":0,"h4::align":0,"h5::align":0,"h6::align":0,"hr::align":0,"hr::noshade":0,"hr::size":0,"hr::width":0,"img::align":0,"img::alt":0,"img::border":0,"img::height":0,
161"img::hspace":0,"img::ismap":0,"img::longdesc":1,"img::name":7,"img::src":1,"img::usemap":11,"img::vspace":0,"img::width":0,"input::accept":0,"input::accesskey":0,"input::autocomplete":0,"input::align":0,"input::alt":0,"input::checked":0,"input::disabled":0,"input::ismap":0,"input::maxlength":0,"input::name":8,"input::onblur":2,"input::onchange":2,"input::onfocus":2,"input::onselect":2,"input::readonly":0,"input::size":0,"input::src":1,"input::tabindex":0,"input::type":0,"input::usemap":11,"input::value":0,
162"ins::cite":1,"ins::datetime":0,"label::accesskey":0,"label::for":5,"label::onblur":2,"label::onfocus":2,"legend::accesskey":0,"legend::align":0,"li::type":0,"li::value":0,"map::name":7,"menu::compact":0,"ol::compact":0,"ol::start":0,"ol::type":0,"optgroup::disabled":0,"optgroup::label":0,"option::disabled":0,"option::label":0,"option::selected":0,"option::value":0,"p::align":0,"pre::width":0,"q::cite":1,"select::disabled":0,"select::multiple":0,"select::name":8,"select::onblur":2,"select::onchange":2,
163"select::onfocus":2,"select::size":0,"select::tabindex":0,"table::align":0,"table::bgcolor":0,"table::border":0,"table::cellpadding":0,"table::cellspacing":0,"table::frame":0,"table::rules":0,"table::summary":0,"table::width":0,"tbody::align":0,"tbody::char":0,"tbody::charoff":0,"tbody::valign":0,"td::abbr":0,"td::align":0,"td::axis":0,"td::bgcolor":0,"td::char":0,"td::charoff":0,"td::colspan":0,"td::headers":6,"td::height":0,"td::nowrap":0,"td::rowspan":0,"td::scope":0,"td::valign":0,"td::width":0,
164"textarea::accesskey":0,"textarea::cols":0,"textarea::disabled":0,"textarea::name":8,"textarea::onblur":2,"textarea::onchange":2,"textarea::onfocus":2,"textarea::onselect":2,"textarea::readonly":0,"textarea::rows":0,"textarea::tabindex":0,"tfoot::align":0,"tfoot::char":0,"tfoot::charoff":0,"tfoot::valign":0,"th::abbr":0,"th::align":0,"th::axis":0,"th::bgcolor":0,"th::char":0,"th::charoff":0,"th::colspan":0,"th::headers":6,"th::height":0,"th::nowrap":0,"th::rowspan":0,"th::scope":0,"th::valign":0,
165"th::width":0,"thead::align":0,"thead::char":0,"thead::charoff":0,"thead::valign":0,"tr::align":0,"tr::bgcolor":0,"tr::char":0,"tr::charoff":0,"tr::valign":0,"ul::compact":0,"ul::type":0};
166he.prototype.Bd=function(a,b){if(!this.ha&&Td.hasOwnProperty(a)){var c=Td[a];if(!(c&32))if(c&16)this.ha=!(c&2);else{for(var d=b,f=0;f<d.length;f+=2){var e=d[f],h=d[f+1],k=m,l;if((l=a+"::"+e,ie.hasOwnProperty(l))||(l="*::"+e,ie.hasOwnProperty(l)))k=ie[l];if(k!==m)switch(k){case 0:break;case 2:case 3:h=m;break;case 4:case 5:case 6:case 7:case 8:case 9:h=this.Jb?this.Jb(h):h;break;case 1:h=this.Fd&&this.Fd(h);break;case 11:h&&"#"===h.charAt(0)?(h=this.Jb?this.Jb(h):h)&&(h="#"+h):h=m;break;default:h=
167m}else h=m;d[f+1]=h}if(b=d){c&2||this.M.push(a);this.aa.append("<",a);c=0;for(d=b.length;c<d;c+=2)f=b[c],e=b[c+1],e!==m&&e!==i&&this.aa.append(" ",f,'="',e.replace(Ud,"&amp;").replace(Wd,"&lt;").replace(Xd,"&gt;").replace(Yd,"&#34;").replace(Zd,"&#61;"),'"');this.aa.append(">")}}}};
168he.prototype.bd=function(a){if(this.ha)this.ha=n;else if(Td.hasOwnProperty(a)){var b=Td[a];if(!(b&50)){if(b&1)for(b=this.M.length;0<=--b;){var c=this.M[b];if(c===a)break;if(!(Td[c]&1))return}else for(b=this.M.length;0<=--b&&this.M[b]!==a;);if(!(0>b)){for(var d=this.M.length;--d>b;)c=this.M[d],Td[c]&1||this.aa.append("</",c,">");this.M.length=b;this.aa.append("</",a,">")}}}};function fe(a,b){a.ha||a.aa.append(b)}he.prototype.Ad=function(a){this.ha||this.aa.append(a)};
169he.prototype.Vc=function(a){this.ha||this.aa.append(a)};function je(a,b,c,d,f){if(!F&&(!H||!I("525")))return j;if(Oa&&f)return ke(a);if(f&&!d||!c&&(17==b||18==b)||F&&d&&b==a)return n;switch(a){case 13:return!(F&&db(9));case 27:return!H}return ke(a)}function ke(a){if(48<=a&&57>=a||96<=a&&106>=a||65<=a&&90>=a||H&&0==a)return j;switch(a){case 32:case 63:case 107:case 109:case 110:case 111:case 186:case 59:case 189:case 187:case 61:case 188:case 190:case 191:case 192:case 222:case 219:case 220:case 221:return j;default:return n}}
170function le(a){switch(a){case 61:return 187;case 59:return 186;case 224:return 91;case 0:return 224;default:return a}};function me(a,b){mc.call(this);a&&ne(this,a,b)}v(me,Ic);r=me.prototype;r.B=m;r.Eb=m;r.qc=m;r.Fb=m;r.ja=-1;r.ia=-1;r.ic=n;
171var oe={3:13,12:144,63232:38,63233:40,63234:37,63235:39,63236:112,63237:113,63238:114,63239:115,63240:116,63241:117,63242:118,63243:119,63244:120,63245:121,63246:122,63247:123,63248:44,63272:46,63273:36,63275:35,63276:33,63277:34,63289:144,63302:45},pe={Up:38,Down:40,Left:37,Right:39,Enter:13,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,"U+007F":46,Home:36,End:35,PageUp:33,PageDown:34,Insert:45},qe=F||H&&I("525"),re=Oa&&G;r=me.prototype;
172r.Nd=function(a){if(H&&(17==this.ja&&!a.ctrlKey||18==this.ja&&!a.altKey))this.ia=this.ja=-1;qe&&!je(a.keyCode,this.ja,a.shiftKey,a.ctrlKey,a.altKey)?this.handleEvent(a):(this.ia=G?le(a.keyCode):a.keyCode,re&&(this.ic=a.altKey))};r.Pd=function(a){this.ia=this.ja=-1;this.ic=a.altKey};
173r.handleEvent=function(a){var b=a.n,c,d,f=b.altKey;F&&"keypress"==a.type?(c=this.ia,d=13!=c&&27!=c?b.keyCode:0):H&&"keypress"==a.type?(c=this.ia,d=0<=b.charCode&&63232>b.charCode&&ke(c)?b.charCode:0):D?(c=this.ia,d=ke(c)?b.keyCode:0):(c=b.keyCode||this.ia,d=b.charCode||0,re&&(f=this.ic),Oa&&(63==d&&224==c)&&(c=191));var e=c,h=b.keyIdentifier;c?63232<=c&&c in oe?e=oe[c]:25==c&&a.shiftKey&&(e=9):h&&h in pe&&(e=pe[h]);a=e==this.ja;this.ja=e;b=new se(e,d,a,b);b.altKey=f;this.dispatchEvent(b)};r.c=p("B");
174function ne(a,b,c){a.Fb&&a.detach();a.B=b;a.Eb=O(a.B,"keypress",a,c);a.qc=O(a.B,"keydown",a.Nd,c,a);a.Fb=O(a.B,"keyup",a.Pd,c,a)}r.detach=function(){this.Eb&&(P(this.Eb),P(this.qc),P(this.Fb),this.Fb=this.qc=this.Eb=m);this.B=m;this.ia=this.ja=-1};function se(a,b,c,d){d&&this.init(d,i);this.type="key";this.keyCode=a;this.charCode=b;this.repeat=c}v(se,rc);function te(){}fa(te);te.prototype.Xd=0;te.ob();function ue(a){mc.call(this);this.ib=a||rb();this.ka=ve}v(ue,Ic);ue.prototype.Rd=te.ob();var ve=m;function we(a,b){switch(a){case 1:return b?"disable":"enable";case 2:return b?"highlight":"unhighlight";case 4:return b?"activate":"deactivate";case 8:return b?"select":"unselect";case 16:return b?"check":"uncheck";case 32:return b?"focus":"blur";case 64:return b?"open":"close"}g(Error("Invalid component state"))}r=ue.prototype;r.Db=m;r.Y=n;r.B=m;r.ka=m;r.sa=m;r.fb=m;r.Fa=m;r.fe=n;r.c=p("B");
175r.Bb=function(){return this.oc||(this.oc=new Fc(this))};r.Cc=function(a){this.sa&&this.sa!=a&&g(Error("Method not supported"));ue.G.Cc.call(this,a)};r.ed=p("ib");r.hb=function(a){this.Y&&g(Error("Component already rendered"));if(a&&this.eb(a)){this.fe=j;if(!this.ib||this.ib.I!=K(a))this.ib=rb(a);this.Xc(a);this.Ia()}else g(Error("Invalid element to decorate"))};r.eb=ba(j);r.Xc=function(a){this.B=a};r.Ia=function(){function a(a){!a.Y&&a.c()&&a.Ia()}this.Y=j;this.fb&&B(this.fb,a,i)};
176r.Ab=function(){function a(a){a.Y&&a.Ab()}this.fb&&B(this.fb,a,i);this.oc&&this.oc.Mb();this.Y=n};r.mb=p("B");r.Sa=function(a){this.Y&&g(Error("Component already rendered"));this.ka=a};
177r.removeChild=function(a,b){if(a){var c=t(a)?a:a.Db||(a.Db=":"+(a.Rd.Xd++).toString(36)),d;this.Fa&&c?(d=this.Fa,d=(c in d?d[c]:i)||m):d=m;a=d;c&&a&&(d=this.Fa,c in d&&delete d[c],C(this.fb,a),b&&(a.Ab(),a.B&&yb(a.B)),c=a,c==m&&g(Error("Unable to set parent component")),c.sa=m,ue.G.Cc.call(c,m))}a||g(Error("Child is not in parent component"));return a};function xe(){}var ye;fa(xe);r=xe.prototype;r.mb=function(a){return a};r.jb=function(a,b,c){if(a=a.c?a.c():a)if(F&&!I("7")){var d=ze(hb(a),b);d.push(b);qa(c?ib:kb,a).apply(m,d)}else c?ib(a,b):kb(a,b)};r.eb=ba(j);
178r.hb=function(a,b){if(b.id){var c=b.id;if(a.sa&&a.sa.Fa){var d=a.sa.Fa,f=a.Db;f in d&&delete d[f];d=a.sa.Fa;c in d&&g(Error('The object already contains the key "'+c+'"'));d[c]=a}a.Db=c}(c=this.mb(b))&&c.firstChild?(c=c.firstChild.nextSibling?Ga(c.childNodes):c.firstChild,a.gb=c):a.gb=m;var e=0,h=this.nb(),k=this.nb(),l=n,q=n,c=n,d=hb(b);B(d,function(a){if(!l&&a==h)l=j,k==h&&(q=j);else if(!q&&a==k)q=j;else{var b=e;if(!this.Ed){this.yb||Ae(this);var c=this.yb,d={},f;for(f in c)d[c[f]]=f;this.Ed=d}a=
179parseInt(this.Ed[a],10);e=b|(isNaN(a)?0:a)}},this);a.t=e;l||(d.push(h),k==h&&(q=j));q||d.push(k);(f=a.W)&&d.push.apply(d,f);if(F&&!I("7")){var w=ze(d);0<w.length&&(d.push.apply(d,w),c=j)}if(!l||!q||f||c)b.className=d.join(" ");a.isEnabled()||this.Ta(b,1,j);a.t&8&&this.Ta(b,8,j);a.P&16&&this.Ta(b,16,!!(a.t&16));a.P&64&&this.Ta(b,64,!!(a.t&64));return b};
180r.Ob=function(a,b){var c=!b,d=F||D?a.getElementsByTagName("*"):m;if(ad){if(c=c?"none":"",a.style[ad]=c,d)for(var f=0,e;e=d[f];f++)e.style[ad]=c}else if(F||D)if(c=c?"on":"",a.setAttribute("unselectable",c),d)for(f=0;e=d[f];f++)e.setAttribute("unselectable",c)};r.Sa=function(a,b){this.jb(a,this.nb()+"-rtl",b)};r.sd=function(a){var b;return a.P&32&&(b=a.Ja())?Bb(b):n};
181r.Bc=function(a,b){var c;if(a.P&32&&(c=a.Ja())){if(!b&&a.t&32){try{c.blur()}catch(d){}a.t&32&&a.fd()}Bb(c)!=b&&(b?c.tabIndex=0:(c.tabIndex=-1,c.removeAttribute("tabIndex")))}};r.L=function(a,b,c){var d=a.c();if(d){var f;this.yb||Ae(this);(f=this.yb[b])&&this.jb(a,f,c);this.Ta(d,b,c)}};r.Ta=function(a,b,c){ye||(ye={1:"disabled",8:"selected",16:"checked",64:"expanded"});(b=ye[b])&&a.setAttribute("aria-"+b,c)};
182r.la=function(a,b){var c=this.mb(a);if(c&&(xb(c),b))if(t(b))if("textContent"in c)c.textContent=b;else if(c.firstChild&&3==c.firstChild.nodeType){for(;c.lastChild!=c.firstChild;)c.removeChild(c.lastChild);c.firstChild.data=b}else xb(c),c.appendChild(K(c).createTextNode(b));else{var d=function(a){if(a){var b=K(c);c.appendChild(t(a)?b.createTextNode(a):a)}};ha(b)?B(b,d):ia(b)&&!("nodeType"in b)?B(Ga(b),d):d(b)}};r.Ja=function(a){return a.c()};r.nb=ba("goog-control");
183function ze(a,b){var c=[];b&&(a=a.concat([b]));B([],function(d){Da(d,qa(Fa,a))&&(!b||Fa(d,b))&&c.push(d.join("_"))});return c}function Ae(a){var b=a.nb();a.yb={1:b+"-disabled",2:b+"-hover",4:b+"-active",8:b+"-selected",16:b+"-checked",32:b+"-focused",64:b+"-open"}};var Be={};function X(a,b,c){ue.call(this,c);if(!b){for(var b=this.constructor,d;b;){d=ka(b);if(d=Be[d])break;b=b.G?b.G.constructor:m}b=d?u(d.ob)?d.ob():new d:m}this.C=b;this.gb=a}v(X,ue);r=X.prototype;r.gb=m;r.t=0;r.P=39;r.kc=255;r.ee=0;r.Qb=j;r.W=m;r.pc=j;r.hc=n;r.$d=m;function Ce(a){a.Y&&n!=a.pc&&De(a,n);a.pc=n}r.Ja=function(){return this.C.Ja(this)};
184r.jb=function(a,b){b?a&&(this.W?Fa(this.W,a)||this.W.push(a):this.W=[a],this.C.jb(this,a,j)):a&&this.W&&(C(this.W,a),0==this.W.length&&(this.W=m),this.C.jb(this,a,n))};r.mb=function(){return this.C.mb(this.c())};r.eb=function(a){return this.C.eb(a)};r.Xc=function(a){this.B=a=this.C.hb(this,a);var b=this.$d||i;b&&a.setAttribute("role",b);this.hc||this.C.Ob(a,n);this.Qb="none"!=a.style.display};
185r.Ia=function(){X.G.Ia.call(this);var a=this.C;this.ka==m&&(this.ka=$c(this.Y?this.B:this.ib.I.body));this.ka&&a.Sa(this.c(),j);this.isEnabled()&&a.Bc(this,this.Qb);if(this.P&-2&&(this.pc&&De(this,j),this.P&32&&(a=this.Ja()))){var b=this.rc||(this.rc=new me);ne(b,a);R(R(R(this.Bb(),b,"key",this.Od),a,"focus",this.Md),a,"blur",this.fd)}};
186function De(a,b){var c=a.Bb(),d=a.c();b?(R(R(R(R(c,d,"mouseover",a.kd),d,"mousedown",a.hd),d,"mouseup",a.ld),d,"mouseout",a.jd),a.Cb!=ea&&R(c,d,"contextmenu",a.Cb),F&&R(c,d,"dblclick",a.gd)):(Hc(Hc(Hc(Hc(c,d,"mouseover",a.kd),d,"mousedown",a.hd),d,"mouseup",a.ld),d,"mouseout",a.jd),a.Cb!=ea&&Hc(c,d,"contextmenu",a.Cb),F&&Hc(c,d,"dblclick",a.gd))}r.Ab=function(){X.G.Ab.call(this);this.rc&&this.rc.detach();this.Qb&&this.isEnabled()&&this.C.Bc(this,n)};
187r.la=function(a){this.C.la(this.c(),a);this.gb=a};r.Sa=function(a){X.G.Sa.call(this,a);var b=this.c();b&&this.C.Sa(b,a)};r.Ob=function(a){this.hc=a;var b=this.c();b&&this.C.Ob(b,a)};r.isEnabled=function(){return!(this.t&1)};function Ee(a,b){Ge(a,2,b)&&a.L(2,b)}r.setActive=function(a){Ge(this,4,a)&&this.L(4,a)};r.L=function(a,b){this.P&a&&b!=!!(this.t&a)&&(this.C.L(this,a,b),this.t=b?this.t|a:this.t&~a)};function Y(a,b){return!!(a.kc&b)&&!!(a.P&b)}
188function Ge(a,b,c){return!!(a.P&b)&&!!(a.t&b)!=c&&(!(a.ee&b)||a.dispatchEvent(we(b,c)))&&!a.Zc}r.kd=function(a){(!a.relatedTarget||!Ab(this.c(),a.relatedTarget))&&(this.dispatchEvent("enter")&&this.isEnabled()&&Y(this,2))&&Ee(this,j)};r.jd=function(a){if((!a.relatedTarget||!Ab(this.c(),a.relatedTarget))&&this.dispatchEvent("leave"))Y(this,4)&&this.setActive(n),Y(this,2)&&Ee(this,n)};r.Cb=ea;
189r.hd=function(a){this.isEnabled()&&(Y(this,2)&&Ee(this,j),tc(a)&&(Y(this,4)&&this.setActive(j),this.C.sd(this)&&this.Ja().focus()));!this.hc&&tc(a)&&a.preventDefault()};r.ld=function(a){this.isEnabled()&&(Y(this,2)&&Ee(this,j),this.t&4&&(He(this,a)&&Y(this,4))&&this.setActive(n))};r.gd=function(a){this.isEnabled()&&He(this,a)};
190function He(a,b){if(Y(a,16)){var c=!(a.t&16);Ge(a,16,c)&&a.L(16,c)}Y(a,8)&&Ge(a,8,j)&&a.L(8,j);Y(a,64)&&(c=!(a.t&64),Ge(a,64,c)&&a.L(64,c));c=new oc("action",a);b&&(c.altKey=b.altKey,c.ctrlKey=b.ctrlKey,c.metaKey=b.metaKey,c.shiftKey=b.shiftKey,c.yc=b.yc);return a.dispatchEvent(c)}r.Md=function(){Y(this,32)&&Ge(this,32,j)&&this.L(32,j)};r.fd=function(){Y(this,4)&&this.setActive(n);Y(this,32)&&Ge(this,32,n)&&this.L(32,n)};
191r.Od=function(a){return this.Qb&&this.isEnabled()&&13==a.keyCode&&He(this,a)?(a.preventDefault(),a.stopPropagation(),j):n};u(X)||g(Error("Invalid component class "+X));u(xe)||g(Error("Invalid renderer class "+xe));var Ie=ka(X);Be[Ie]=xe;function Je(){return new X(m)}u(Je)||g(Error("Invalid decorator function "+Je));function Ke(){}v(Ke,xe);fa(Ke);r=Ke.prototype;r.hb=function(a,b){Ce(a);a.kc&=-256;a.Y&&a.t&32&&g(Error("Component already rendered"));a.t&32&&a.L(32,n);a.P&=-33;Ke.G.hb.call(this,a,b);a.la(b.value);return b};r.eb=function(a){return"TEXTAREA"==a.tagName};r.Sa=ea;r.sd=function(a){return a.isEnabled()};r.Bc=ea;r.L=function(a,b,c){Ke.G.L.call(this,a,b,c);if((a=a.c())&&1==b)a.disabled=c};r.Ta=ea;r.la=function(a,b){a&&(a.value=b)};r.nb=ba("goog-textarea");function Le(a,b,c){X.call(this,a,b||Ke.ob(),c);Ce(this);this.Ob(j);a||(this.gb="")}v(Le,X);var Me=G||H;r=Le.prototype;r.Oa=n;r.ga=0;r.Ud=0;r.wd=0;r.nd=n;r.Ib=n;r.Ac=n;r.zc=n;function Ne(a){return a.pb.top+a.pb.bottom+a.Tc.top+a.Tc.bottom}function Oe(a){var b=a.wd,c=a.c();b&&(c&&a.Ib)&&(b-=Ne(a));return b}function Pe(a){var b=a.Ud,c=a.c();b&&(c&&a.Ib)&&(b-=Ne(a));return b}r.la=function(a){Le.G.la.call(this,a);this.c()&&this.Ka()};
192r.Ia=function(){Le.G.Ia.call(this);var a=this.c();S(a,{overflowY:"hidden",overflowX:"auto",boxSizing:"border-box",MsBoxSizing:"border-box",WebkitBoxSizing:"border-box",MozBoxSizing:"border-box"});this.pb=cd(a,"padding");this.Tc=fd(a);R(R(R(R(this.Bb(),a,"scroll",this.Ka),a,"focus",this.Ka),a,"keyup",this.Ka),a,"mouseup",this.Wd);this.c()&&this.Ka()};
193function Qe(a){if(!a.nd){var b=a.c().cloneNode(n);S(b,{position:"absolute",height:"auto",top:"-9999px",margin:"0",padding:"1px",border:"1px solid #000",overflow:"hidden"});a.ed().I.body.appendChild(b);var c=b.scrollHeight;b.style.padding="10px";var d=b.scrollHeight;a.Ac=d>c;b.style.borderWidth="10px";a.zc=b.scrollHeight>d;b.style.height="100px";100!=b.offsetHeight&&(a.Ib=j);yb(b);a.nd=j}var b=a.c(),c=a.c().scrollHeight,f=a.c(),d=f.offsetHeight-f.clientHeight;if(!a.Ac)var e=a.pb,d=d-(e.top+e.bottom);
194a.zc||(f=fd(f),d-=f.top+f.bottom);c+=0<d?d:0;a.Ib?c-=Ne(a):(a.Ac||(d=a.pb,c+=d.top+d.bottom),a.zc||(a=fd(b),c+=a.top+a.bottom));return c}function Re(a,b){a.ga!=b&&(a.ga=b,a.c().style.height=b+"px")}function Se(a){a=a.c();a.style.height="auto";var b=a.value.match(/\n/g)||[];a.rows=b.length+1}
195r.Ka=function(){if(!this.Oa){var a=n;this.Oa=j;var b=this.c(),c=this.ga;if(b.scrollHeight){var d=n,f=n,e=Qe(this),h=b.offsetHeight,k=Oe(this),l=Pe(this);k&&e<k?(Re(this,k),d=j):l&&e>l?(Re(this,l),b.style.overflowY="",f=j):h!=e?Re(this,e):this.ga||(this.ga=e);!d&&(!f&&Me)&&(a=j)}else Se(this);this.Oa=n;a&&(a=this.c(),this.Oa||(this.Oa=j,b=n,a.value||(a.value=" ",b=j),(f=a.scrollHeight)?(e=Qe(this),d=Oe(this),h=Pe(this),!(d&&e<=d)&&!(h&&e>=h)&&(h=this.pb,a.style.paddingBottom=h.bottom+1+"px",Qe(this)==
196e&&(a.style.paddingBottom=h.bottom+f+"px",a.scrollTop=0,f=Qe(this)-f,f>=d?Re(this,f):Re(this,d)),a.style.paddingBottom=h.bottom+"px")):Se(this),b&&(a.value=""),this.Oa=n));c!=this.ga&&this.dispatchEvent("resize")}};r.Wd=function(){var a=this.c(),b=a.offsetHeight;a.filters&&a.filters.length&&(a=a.filters.item("DXImageTransform.Microsoft.DropShadow"))&&(b-=a.offX);b!=this.ga&&(this.ga=this.wd=b)};F&&I(8);function Te(a){return"object"===typeof a&&a&&0===a.je?a.content:String(a).replace(Ue,Ve)}var We={"\x00":"&#0;",'"':"&quot;","&":"&amp;","'":"&#39;","<":"&lt;",">":"&gt;","\t":"&#9;","\n":"&#10;","\x0B":"&#11;","\f":"&#12;","\r":"&#13;"," ":"&#32;","-":"&#45;","/":"&#47;","=":"&#61;","`":"&#96;","\u0085":"&#133;","\u00a0":"&#160;","\u2028":"&#8232;","\u2029":"&#8233;"};function Ve(a){return We[a]}var Ue=/[\x00\x22\x26\x27\x3c\x3e]/g;function Xe(){return'<div class="annotorious-popup top-left" style="position:absolute;z-index:1"><div class="annotorious-popup-buttons"><a class="annotorious-popup-button annotorious-popup-button-edit" title="Edit" href="javascript:void(0);">EDIT</a><a class="annotorious-popup-button annotorious-popup-button-delete" title="Delete" href="javascript:void(0);">DELETE</a></div><span class="annotorious-popup-text"></span></div>'}
197function Ye(){return'<div class="annotorious-editor" style="position:absolute;z-index:1"><form><textarea class="annotorious-editor-text" placeholder="Add a Comment..." tabindex="1"></textarea><div class="annotorious-editor-button-container"><a class="annotorious-editor-button annotorious-editor-button-cancel" href="javascript:void(0);" tabindex="3">Cancel</a><a class="annotorious-editor-button annotorious-editor-button-save" href="javascript:void(0);" tabindex="2">Save</a></div></form></div>'};function Ze(a){function b(){var a=d.Ea;a.c()&&a.Ka()}this.element=Od(Ye);this.d=a;this.Id=a.getItem();this.Ea=new Le("");this.Gd=M(".annotorious-editor-button-cancel",this.element)[0];this.Jc=M(".annotorious-editor-button-save",this.element)[0];var c;c=this.Jc;gb?c=c.parentElement:(c=c.parentNode,c=zb(c)?c:m);this.Hd=c;this.Va=[];var d=this;O(this.Gd,"click",function(b){b.preventDefault();a.stopSelection(d.Pc);d.close()});O(this.Jc,"click",function(b){b.preventDefault();b=d.cd();a.z(b);a.stopSelection();
198d.Pc?a.fireEvent("onAnnotationUpdated",b):a.fireEvent("onAnnotationCreated",b);d.close()});V(this.element,n);a.element.appendChild(this.element);this.Ea.hb(M(".annotorious-editor-text",this.element)[0]);var f=this.element;c=document.createElement("div");S(c,"position","absolute");S(c,"top","0px");S(c,"right","0px");S(c,"width","5px");S(c,"height","100%");S(c,"cursor","e-resize");f.appendChild(c);var e=fd(f),e=Zc(f).width-e.right-e.left;c=new gd(c);c.sc=new Kc(e,0,800,0)||new Kc(NaN,NaN,NaN,NaN);c.Yc=
199function(a){S(f,"width",a+"px");b&&b()}}r=Ze.prototype;r.gc=function(a){var b=vb("div","annotorious-editor-field");t(a)?b.innerHTML=a:u(a)?this.Va.push({A:b,lc:a}):zb(a)&&b.appendChild(a);a=this.Hd;a.parentNode&&a.parentNode.insertBefore(b,a)};r.open=function(a){(this.sb=this.Pc=a)&&this.Ea.la(String(a.text));V(this.element,j);this.Ea.c().focus();B(this.Va,function(b){var c=b.lc(a);t(c)?b.A.innerHTML=c:zb(c)&&(xb(b.A),b.A.appendChild(c))})};r.close=function(){V(this.element,n);this.Ea.la("")};
200r.setPosition=function(a){Oc(this.element,a.x,a.y)};r.cd=function(){var a;a=this.Ea.c().value;var b=new Qd;(new Rd).parse(new he(b,function(a){return a},i),a);a=b.toString();this.sb?this.sb.text=a:this.sb=new Fd(this.Id.src,a,this.d.qa().getShape());return this.sb};Ze.prototype.addField=Ze.prototype.gc;Ze.prototype.getAnnotation=Ze.prototype.cd;function $e(a,b,c){var d=this;c||(c="Click and Drag to Annotate");this.element=Od(af,{vc:c});this.d=a;this.Mc=M(".annotorious-hint-msg",this.element)[0];this.Lc=M(".annotorious-hint-icon",this.element)[0];this.ec=function(){d.show()};this.dc=function(){bf(d)};this.Tb();bf(this);b.appendChild(this.element)}
201$e.prototype.Tb=function(){var a=this;this.Oc=O(this.Lc,"mouseover",function(){a.show();window.clearTimeout(a.$b)});this.Nc=O(this.Lc,"mouseout",function(){bf(a)});this.d.k("onMouseOverItem",this.ec);this.d.k("onMouseOutOfItem",this.dc)};$e.prototype.tb=function(){P(this.Oc);P(this.Nc);this.d.Ra("onMouseOverItem",this.ec);this.d.Ra("onMouseOutOfItem",this.dc)};$e.prototype.show=function(){window.clearTimeout(this.$b);U(this.Mc,0.8);var a=this;this.$b=window.setTimeout(function(){bf(a)},3E3)};
202function bf(a){window.clearTimeout(a.$b);U(a.Mc,0)}$e.prototype.R=function(){this.tb();delete this.Oc;delete this.Nc;delete this.ec;delete this.dc;yb(this.element)};function cf(a){this.element=Od(Xe);this.d=a;this.Jd=M(".annotorious-popup-text",this.element)[0];this.N=M(".annotorious-popup-buttons",this.element)[0];this.Yb=n;this.Va=[];var b=M(".annotorious-popup-button-edit",this.N)[0],c=M(".annotorious-popup-button-delete",this.N)[0],d=this;O(b,"mouseover",function(){ib(b,"annotorious-popup-button-active")});O(b,"mouseout",function(){kb(b,"annotorious-popup-button-active")});O(b,"click",function(){U(d.element,0);S(d.element,"pointer-events","none");a.$c(d.f)});
203O(c,"mouseover",function(){ib(c,"annotorious-popup-button-active")});O(c,"mouseout",function(){kb(c,"annotorious-popup-button-active")});O(c,"click",function(){a.fireEvent("beforeAnnotationRemoved",d.f)||(U(d.element,0),S(d.element,"pointer-events","none"),a.w(d.f),a.fireEvent("onAnnotationRemoved",d.f))});df&&(O(this.element,"mouseover",function(){window.clearTimeout(d.Wb);0.9>(d.N.style[za("opacity")]||"")&&U(d.N,0.9);d.clearHideTimer()}),O(this.element,"mouseout",function(){U(d.N,0);d.startHideTimer()}),
204a.k("onMouseOutOfItem",function(){d.startHideTimer()}));U(this.N,0);U(this.element,0);S(this.element,"pointer-events","none");a.element.appendChild(this.element)}r=cf.prototype;r.gc=function(a){var b=vb("div","annotorious-popup-field");t(a)?b.innerHTML=a:u(a)?this.Va.push({A:b,lc:a}):zb(a)&&b.appendChild(a);this.element.appendChild(b)};
205r.startHideTimer=function(){this.Yb=n;if(!this.ab){var a=this;this.ab=window.setTimeout(function(){a.d.fireEvent("beforePopupHide",a);a.Yb||(U(a.element,0),S(a.element,"pointer-events","none"),U(a.N,0.9),delete a.ab)},150)}};r.clearHideTimer=function(){this.Yb=j;this.ab&&(window.clearTimeout(this.ab),delete this.ab)};
206r.show=function(a,b){this.clearHideTimer();b&&this.setPosition(b);a&&this.setAnnotation(a);this.Wb&&window.clearTimeout(this.Wb);U(this.N,0.9);if(df){var c=this;this.Wb=window.setTimeout(function(){U(c.N,0)},1E3)}U(this.element,0.9);S(this.element,"pointer-events","auto")};r.setPosition=function(a){Oc(this.element,new J(a.x,a.y))};
207r.setAnnotation=function(a){this.f=a;this.Jd.innerHTML=a.text?a.text.replace(/\n/g,"<br/>"):'<span class="annotorious-popup-empty">No comment</span>';"editable"in a&&a.editable==n?V(this.N,n):V(this.N,j);B(this.Va,function(b){var c=b.lc(a);t(c)?b.A.innerHTML=c:zb(c)&&(xb(b.A),b.A.appendChild(c))})};cf.prototype.addField=cf.prototype.gc;function ef(a,b){this.T=a;this.d=b;this.xa=[];this.U=[];this.F=this.T.getContext("2d");this.ma=j;this.ub=n;var c=this;O(this.T,ff,function(a){if(c.ma){var b=gf(c,a.offsetX,a.offsetY);b?(c.ub=c.ub&&b==c.f,c.f?c.f!=b&&(c.ma=n,c.d.popup.startHideTimer()):(c.f=b,hf(c),c.d.fireEvent("onMouseOverAnnotation",{na:c.f,mouseEvent:a}))):!c.ub&&c.f&&(c.ma=n,c.d.popup.startHideTimer())}else c.Ua=a});b.k("onMouseOutOfItem",function(){delete c.f;c.ma=j});b.k("beforePopupHide",function(){if(!c.ma&&c.Ua){var a=c.f;
208c.f=gf(c,c.Ua.offsetX,c.Ua.offsetY);c.ma=j;a!=c.f?(hf(c),c.d.fireEvent("onMouseOutOfAnnotation",{na:a,mouseEvent:c.Ua}),c.d.fireEvent("onMouseOverAnnotation",{na:c.f,mouseEvent:c.Ua})):c.f&&c.d.popup.clearHideTimer()}else hf(c)})}r=ef.prototype;r.z=function(a,b){b&&(b==this.f&&delete this.f,C(this.xa,b),delete this.U[Ed(b.shapes[0])]);this.xa.push(a);var c=a.shapes[0];if("pixel"!=c.units)var d=this,c=Dd(c,function(a){return d.d.kb(a)});this.U[Ed(a.shapes[0])]=c;hf(this)};
209r.w=function(a){a==this.f&&delete this.f;C(this.xa,a);delete this.U[Ed(a.shapes[0])];hf(this)};r.J=function(){return Ga(this.xa)};r.r=function(a){(this.f=a)?this.ub=j:this.d.popup.startHideTimer();hf(this);this.ma=j};function gf(a,b,c){a=a.lb(b,c);if(0<a.length)return a[0]}
210r.lb=function(a,b){var c=[],d=this;B(this.xa,function(f){var e;e=d.U[Ed(f.shapes[0])];if("rect"==e.type)e=a<e.geometry.x||b<e.geometry.y||a>e.geometry.x+e.geometry.width||b>e.geometry.y+e.geometry.height?n:j;else if("polygon"==e.type){e=e.geometry.points;for(var h=n,k=e.length-1,l=0;l<e.length;l++)e[l].y>b!=e[k].y>b&&a<(e[k].x-e[l].x)*(b-e[l].y)/(e[k].y-e[l].y)+e[l].x&&(h=!h),k=l;e=h}else e=n;e&&c.push(f)});z.sort.call(c,function(a,b){var c=d.U[Ed(a.shapes[0])],k=d.U[Ed(b.shapes[0])];return Ad(c)-
211Ad(k)}||Ja);return c};function jf(a,b,c){var d=Ea(a.d.ra(),function(a){return a.getSupportedShapeType()==b.type});d?d.drawShape(a.F,b,c):console.log("WARNING unsupported shape type: "+b.type)}function hf(a){a.F.clearRect(0,0,a.T.width,a.T.height);B(a.xa,function(b){b!=a.f&&jf(a,a.U[Ed(b.shapes[0])])});if(a.f){var b=a.U[Ed(a.f.shapes[0])];jf(a,b,j);b=Bd(b).geometry;a.d.popup.show(a.f,new ud(b.x,b.y+b.height+5))}};var kf="ontouchstart"in window,df=!kf,lf=kf?"touchstart":"mousedown",mf=kf?"touchenter":"mouseover",ff=kf?"touchmove":"mousemove",nf=kf?"touchend":"mouseup",of=kf?"touchleave":"mouseout";function pf(a,b){var c=n;return c=!a.offsetX||!a.offsetY&&a.n.changedTouches?{x:a.n.changedTouches[0].clientX-pd(b).left,y:a.n.changedTouches[0].clientY-pd(b).top}:{x:a.offsetX,y:a.offsetY}};function qf(){}r=qf.prototype;r.init=function(a,b){this.Rb="#000000";this.Sb="#ffffff";this.Gc=i;this.Ic="#fff000";this.Hc=i;this.T=b;this.d=a;this.F=b.getContext("2d");this.F.lineWidth=1;this.Zb=n};
212r.Tb=function(){var a=this,b=this.T;this.bc=O(this.T,ff,function(c){c=pf(c,b);if(a.Zb){a.H={x:c.x,y:c.y};a.F.clearRect(0,0,b.width,b.height);var c=a.H.x-a.j.x,d=a.H.y-a.j.y;a.F.strokeStyle=a.Rb;a.F.strokeRect(a.j.x+0.5,a.j.y+0.5,c,d);a.F.strokeStyle=a.Sb;0<c&&0<d?a.F.strokeRect(a.j.x+1.5,a.j.y+1.5,c-2,d-2):0<c&&0>d?a.F.strokeRect(a.j.x+1.5,a.j.y-0.5,c-2,d+2):0>c&&0>d?a.F.strokeRect(a.j.x-0.5,a.j.y-0.5,c+2,d+2):a.F.strokeRect(a.j.x-0.5,a.j.y+1.5,c+2,d-2)}});this.cc=O(b,nf,function(c){var d=pf(c,b),
213f=a.getShape(),c=c.n?c.n:c;a.Zb=n;f?(a.tb(),a.d.fireEvent("onSelectionCompleted",{mouseEvent:c,shape:f,viewportBounds:a.getViewportBounds()})):(a.d.fireEvent("onSelectionCanceled"),c=a.d.lb(d.x,d.y),0<c.length&&a.d.r(c[0]))})};r.tb=function(){this.bc&&(P(this.bc),delete this.bc);this.cc&&(P(this.cc),delete this.cc)};r.getName=ba("rect_drag");r.getSupportedShapeType=ba("rect");
214r.Z=function(a){a.outline&&(this.Rb=a.outline);a.stroke&&(this.Sb=a.stroke);a.fill&&(this.Gc=a.fill);a.hi_stroke&&(this.Ic=a.hi_stroke);a.hi_fill&&(this.Hc=a.hi_fill)};r.startSelection=function(a,b){var c={x:a,y:b};this.Zb=j;this.Tb(c);this.j=new ud(a,b);this.d.fireEvent("onSelectionStarted",{offsetX:a,offsetY:b});S(document.body,"-webkit-user-select","none")};r.stopSelection=function(){this.tb();this.F.clearRect(0,0,this.T.width,this.T.height);S(document.body,"-webkit-user-select","auto");delete this.H};
215r.getShape=function(){if(this.H&&3<Math.abs(this.H.x-this.j.x)&&3<Math.abs(this.H.y-this.j.y)){var a=this.getViewportBounds(),b=this.d.Pb({x:a.left,y:a.top}),a=this.d.Pb({x:a.right-1,y:a.bottom-1});return new zd("rect",new yd(b.x,b.y,a.x-b.x,a.y-b.y))}};r.getViewportBounds=function(){var a,b;this.H.x>this.j.x?(a=this.H.x,b=this.j.x):(a=this.j.x,b=this.H.x);var c,d;this.H.y>this.j.y?(c=this.j.y,d=this.H.y):(c=this.H.y,d=this.j.y);return{top:c,right:a,bottom:d,left:b}};
216r.drawShape=function(a,b,c){var d;"rect"==b.type&&(c?(a.lineWidth=1.2,c=this.Ic,d=this.Hc):(a.lineWidth=1,c=this.Sb,d=this.Gc),b=b.geometry,a.strokeStyle=this.Rb,a.strokeRect(b.x+0.5,b.y+0.5,b.width+1,b.height+1),a.strokeStyle=c,a.strokeRect(b.x+1.5,b.y+1.5,b.width-1,b.height-1),d&&(a.fillStyle=d,a.fillRect(b.x+1.5,b.y+1.5,b.width-1,b.height-1)))};function rf(a){return'<canvas class="annotorious-item annotorious-opacity-fade" style="position:absolute; top:0px; left:0px; width:'+Te(a.width)+"px; height:"+Te(a.height)+'px; z-index:0" width="'+Te(a.width)+'" height="'+Te(a.height)+'"></canvas>'}
217function af(a){return'<div class="annotorious-hint" style="white-space:nowrap; position:absolute; top:0px; left:0px; pointer-events:none;"><div class="annotorious-hint-msg annotorious-opacity-fade">'+Te(a.vc)+'</div><div class="annotorious-hint-icon" style="pointer-events:auto"></div></div>'};function sf(a,b){function c(b,c){S(d,"margin-"+b,c+"px");S(a,"margin-"+b,0);S(a,"padding-"+b,0)}this.ba=a;this.Qc={padding:a.style.padding,margin:a.style.margin};this.v=new qd;this.Da=[];this.fc=j;this.element=vb("div","annotorious-annotationlayer");S(this.element,"position","relative");S(this.element,"display","inline-block");var d=this.element,f=cd(a,"margin"),e=cd(a,"padding");(0!=f.top||0!=e.top)&&c("top",f.top+e.top);(0!=f.right||0!=e.right)&&c("right",f.right+e.right);(0!=f.bottom||0!=e.bottom)&&
218c("bottom",f.bottom+e.bottom);(0!=f.left||0!=e.left)&&c("left",f.left+e.left);(f=a.parentNode)&&f.replaceChild(this.element,a);this.element.appendChild(a);f=Zc(a);this.da=Od(rf,{width:f.width,height:f.height});df&&ib(this.da,"annotorious-item-unfocus");this.element.appendChild(this.da);this.e=Od(rf,{width:f.width,height:f.height});df&&V(this.e,n);this.element.appendChild(this.e);this.popup=b?b:new cf(this);f=new qf;f.init(this,this.e);this.Da.push(f);this.Aa=f;this.editor=new Ze(this);this.l=new ef(this.da,
219this);this.Xa=new $e(this,this.element);var h=this;df&&(O(this.element,mf,function(a){a=a.relatedTarget;if(!a||!Ab(h.element,a))h.v.fireEvent("onMouseOverItem"),mb(h.da,"annotorious-item-unfocus","annotorious-item-focus")}),O(this.element,of,function(a){a=a.relatedTarget;if(!a||!Ab(h.element,a))h.v.fireEvent("onMouseOutOfItem"),mb(h.da,"annotorious-item-focus","annotorious-item-unfocus")}));var k=kf?this.e:this.da;O(k,lf,function(a){a=pf(a,k);h.l.r(i);h.fc?(V(h.e,j),h.Aa.startSelection(a.x,a.y)):
220(a=h.l.lb(a.x,a.y),0<a.length&&h.l.r(a[0]))});this.v.k("onSelectionCompleted",function(a){var b=a.viewportBounds;h.editor.setPosition(new ud(b.left+h.ba.offsetLeft,b.bottom+4+h.ba.offsetTop));h.editor.open(i,a)});this.v.k("onSelectionCanceled",function(){df&&V(h.e,n);h.Aa.stopSelection()})}r=sf.prototype;r.ea=aa();r.z=function(a,b){this.l.z(a,b)};r.k=function(a,b){this.v.k(a,b)};r.Sc=function(a){a.init(this,this.e);this.Da.push(a)};
221r.R=function(){var a=this.ba;a.style.margin=this.Qc.margin;a.style.padding=this.Qc.padding;var b=this.element,c=b.parentNode;c&&c.replaceChild(a,b)};
222r.$c=function(a){this.l.w(a);var b=Ea(this.Da,function(b){return b.getSupportedShapeType()==a.shapes[0].type});if(b){V(this.e,j);this.l.r(i);var c=this.e.getContext("2d"),d=a.shapes[0],f=this,d="pixel"==d.units?d:Dd(d,function(a){return f.kb(a)});b.drawShape(c,d)}b=Bd(a.shapes[0]).geometry;b="pixel"==a.shapes[0].units?new ud(b.x,b.y+b.height):this.kb(new ud(b.x,b.y+b.height));this.editor.setPosition(new ud(b.x+this.ba.offsetLeft,b.y+4+this.ba.offsetTop));this.editor.open(a)};
223r.fireEvent=function(a,b){return this.v.fireEvent(a,b)};r.kb=function(a){var b=Xc(this.ba);return{x:a.x*b.width,y:a.y*b.height}};r.qa=p("Aa");r.J=function(){return this.l.J()};r.lb=function(a,b){return Ga(this.l.lb(a,b))};r.ra=p("Da");r.getItem=function(){return{src:tf(this.ba)}};function tf(a){var b=a.getAttribute("data-original");return b?b:a.src}r.X=function(){V(this.da,n)};r.O=function(){this.fc=n;this.Xa&&(this.Xa.R(),delete this.Xa)};r.r=function(a){this.l.r(a)};r.w=function(a){this.l.w(a)};
224r.Ra=function(a,b){this.v.Ra(a,b)};r.be=function(a){(this.Aa=Ea(this.Da,function(b){return b.getName()==a}))||console.log('WARNING: selector "'+a+'" not available')};r.Z=function(a){B(this.Da,function(b){b.Z(a)});hf(this.l)};r.wa=function(){V(this.da,j)};r.$=function(){this.fc=j;this.Xa||(this.Xa=new $e(this,this.element))};r.stopSelection=function(a){df&&V(this.e,n);this.Aa.stopSelection();a&&this.l.z(a)};r.Pb=function(a){var b=Xc(this.ba);return{x:a.x/b.width,y:a.y/b.height}};
225sf.prototype.addSelector=sf.prototype.Sc;sf.prototype.fireEvent=sf.prototype.fireEvent;sf.prototype.setCurrentSelector=sf.prototype.be;sf.prototype.toItemCoordinates=sf.prototype.Pb;function uf(){Hd(this,function(){return M("img.annotatable",document)})}v(uf,Gd);uf.prototype.mc=function(a){return tf(a)};uf.prototype.yd=function(a){return new sf(a)};uf.prototype.Dc=function(a){return zb(a)?"IMG"==a.tagName:n};function vf(a){return'<div class="annotorious-opacity-fade" style="white-space:nowrap; position:absolute; pointer-events:none; top:80px; width:100%; text-align:center;"><div class="annotorious-ol-hint" style="width: 400px; margin:0px auto;">'+Te(a.vc)+"</dvi></div>"};function wf(a,b){this.ca=a;this.Ya=Zc(b.element);this.Q=b.popup;S(this.Q.element,"z-index",99E3);this.Za=[];this.Ub=new OpenLayers.Layer.Boxes("Annotorious");this.ca.addLayer(this.Ub);var c=this;this.ca.events.register("move",this.ca,function(){c.Ba&&xf(c)});b.k("beforePopupHide",function(){c.ac==c.Ba?c.Q.clearHideTimer():yf(c,c.ac,c.Ba)})}
226function xf(a){var b=a.Ba.Hb.div,c=Zc(b),d=Tc(b,a.ca.div),b=d.y,d=d.x,f=c.width,e=c.height,c=Zc(a.Q.element),b={y:b+e+5};d+c.width>a.Ya.width?(mb(a.Q.element,"top-left","top-right"),b.x=d+f-c.width):(mb(a.Q.element,"top-right","top-left"),b.x=d);0>b.x&&(b.x=0);b.x+c.width>a.Ya.width&&(b.x=a.Ya.width-c.width);b.y+c.height>a.Ya.height&&(b.y=a.Ya.height-c.height);a.Q.setPosition(b)}
227function yf(a,b,c){b?(Tc(b.Hb.div,a.ca.div),za("height"),S(b.qd,"border-color","#fff000"),a.Ba=b,a.Q.setAnnotation(b.na),xf(a),a.Q.show()):delete a.Ba;c&&S(c.qd,"border-color","#fff")}
228wf.prototype.z=function(a){var b=a.shapes[0].geometry,b=new OpenLayers.Marker.Box(new OpenLayers.Bounds(b.x,b.y,b.x+b.width,b.y+b.height));ib(b.div,"annotorious-ol-boxmarker-outer");S(b.div,"border",m);var c=vb("div","annotorious-ol-boxmarker-inner");Wc(c,"100%","100%");b.div.appendChild(c);var d={na:a,Hb:b,qd:c},f=this;O(c,"mouseover",function(){f.Ba||yf(f,d);f.ac=d});O(c,"mouseout",function(){delete f.ac;f.Q.startHideTimer()});this.Za.push(d);z.sort.call(this.Za,function(a,b){return Ad(b.na.shapes[0])-
229Ad(a.na.shapes[0])}||Ja);var e=1E4;B(this.Za,function(a){S(a.Hb.div,"z-index",e);e++});this.Ub.addMarker(b)};wf.prototype.w=function(a){var b=Ea(this.Za,function(b){return b.na==a});b&&(C(this.Za,b),this.Ub.removeMarker(b.Hb))};wf.prototype.J=aa();wf.prototype.r=function(a){a||this.Q.startHideTimer()};function zf(a){function b(){var a=parseInt(T(d.element,"width"),10),b=parseInt(T(d.element,"height"),10);Wc(d.e,a,b);d.e.width=a;d.e.height=b}this.ca=a;this.element=a.div;var c=this.element.style[za("position")]||"";"absolute"!=c&&"relative"!=c&&S(this.element,"position","relative");this.v=new qd;this.bb=Od(vf,{vc:"Click and Drag"});S(this.bb,"z-index",9998);U(this.bb,0);this.element.appendChild(this.bb);this.popup=new cf(this);this.l=new wf(a,this);this.e=Od(rf,{width:"0",height:"0"});V(this.e,n);
230S(this.e,"position","absolute");S(this.e,"top","0px");S(this.e,"z-index",9999);this.element.appendChild(this.e);var d=this;b();this.cb=new qf;this.cb.init(this,this.e);this.vb=i;this.editor=new Ze(this);S(this.editor.element,"z-index",1E4);window.addEventListener?window.addEventListener("resize",b,n):window.attachEvent&&window.attachEvent("onresize",b);O(this.element,"mouseover",function(a){a=a.relatedTarget;(!a||!Ab(d.element,a))&&d.v.fireEvent("onMouseOverItem")});O(this.element,"mouseout",function(a){a=
231a.relatedTarget;(!a||!Ab(d.element,a))&&d.v.fireEvent("onMouseOutOfItem")});O(this.e,"mousedown",function(a){var b=Uc(d.element);d.cb.startSelection(a.clientX-b.x,a.clientY-b.y)});this.v.k("onSelectionCompleted",function(a){S(d.e,"pointer-events","none");a=a.viewportBounds;d.editor.setPosition(new ud(a.left,a.bottom+4));d.editor.open()});this.v.k("onSelectionCanceled",function(){d.stopSelection()})}r=zf.prototype;r.$=aa();r.O=aa();
232r.ea=function(a){S(this.e,"pointer-events","auto");var b=this;V(this.e,j);U(this.bb,0.8);window.setTimeout(function(){U(b.bb,0)},2E3);a&&(this.vb=a)};r.$c=function(a){this.l.w(a);var b=this.cb,c=this;if(b){V(this.e,j);this.l.r(i);var d=this.e.getContext("2d"),f=Dd(a.shapes[0],function(a){return c.kb(a)});b.drawShape(d,f);b=Bd(f).geometry;this.editor.setPosition(new ud(b.x+this.element.offsetLeft,b.y+b.height+4+this.element.offsetTop));this.editor.open(a)}};r.z=function(a){this.l.z(a)};
233r.k=function(a,b){this.v.k(a,b)};r.Sc=aa();r.fireEvent=function(a,b){return this.v.fireEvent(a,b)};r.kb=function(a){a=this.ca.getViewPortPxFromLonLat(new OpenLayers.LonLat(a.x,a.y));return{x:a.x,y:a.y}};r.qa=p("cb");r.J=aa();r.ra=aa();r.getItem=function(){return{src:"map://openlayers/something"}};r.r=function(a){this.l.r(a)};r.w=function(a){this.l.w(a)};r.Ra=function(a,b){this.v.Ra(a,b)};r.qb=aa();
234r.stopSelection=function(a){V(this.e,n);this.vb&&(this.vb(),delete this.vb);this.cb.stopSelection();a&&this.l.z(a)};r.Pb=function(a){a=this.ca.getLonLatFromPixel(new OpenLayers.Pixel(a.x,a.y));return{x:a.lon,y:a.lat}};function Af(){Hd(this)}v(Af,Gd);Af.prototype.mc=ba("map://openlayers/something");Af.prototype.yd=function(a){return new zf(a)};Af.prototype.Dc=function(a){return a instanceof OpenLayers.Map};function Z(){function a(){B(b.o,function(a){a.init()});B(b.$a,function(a){a.initPlugin&&a.initPlugin(b);B(b.o,function(b){b.wb(a)})})}this.o=[new uf];window.OpenLayers&&this.o.push(new Af);this.$a=[];var b=this;window.addEventListener?window.addEventListener("load",a,n):window.attachEvent&&window.attachEvent("onload",a)}function $(a,b){return Ea(a.o,function(a){return Nd(a,b)})}r=Z.prototype;
235r.ea=function(a,b){var c=i,d=i;t(a)?(c=a,d=b):u(a)&&(d=a);if(c){var f=$(this,c);f&&f.ea(c,d)}else B(this.o,function(a){a.ea(d)})};r.z=function(a,b){var c;c=a.src;if(!(0<c.indexOf("://"))){var d=document.createElement("a");d.href=c;c=d.protocol+"//"+d.host+d.pathname}a.src=c;(c=$(this,a.src))&&c.z(a,b)};r.k=function(a,b){B(this.o,function(c){c.k(a,b)})};
236r.wb=function(a,b){try{var c=new window.annotorious.plugin[a](b);"complete"==document.readyState?(c.initPlugin&&c.initPlugin(this),B(this.o,function(a){a.wb(c)})):this.$a.push(c)}catch(d){console.log("Could not load plugin: "+a)}};r.R=function(a){if(a){var b=$(this,a);b&&b.R(a)}else B(this.o,function(a){a.R()})};r.qa=function(a){var b=$(this,a);if(b)return b.qa(a)};r.J=function(a){if(a){var b=$(this,a);return b?b.J(a):[]}var c=[];B(this.o,function(a){Ha(c,a.J())});return c};
237r.ra=function(a){var b=$(this,a);return b?b.ra(a):[]};r.X=function(a){if(a){var b=$(this,a);b&&b.X(a)}else B(this.o,function(a){a.X()})};r.O=function(a){if(a){var b=$(this,a);b&&b.O(a)}else B(this.o,function(a){a.O()})};r.r=function(a){if(a){var b=$(this,a.src);b&&b.r(a)}else B(this.o,function(a){a.r()})};r.tc=function(a){var b=Ea(this.o,function(b){return b.Dc(a)});b?b.tc(a):g("Error: Annotorious does not support this media type in the current version or build configuration.")};
238r.Mb=function(a){var b=this;B(this.J(a),function(a){b.w(a)})};r.w=function(a){var b=$(this,a.src);b&&b.w(a)};r.reset=function(){B(this.o,function(a){a.R();a.init()})};r.qb=function(a,b){var c=$(this,a);c&&c.qb(a,b)};r.Z=function(a){B(this.o,function(b){b.Z(a)})};r.ce=function(a){a?this.$(i):this.O(i)};r.wa=function(a){if(a){var b=$(this,a);b&&b.wa(a)}else B(this.o,function(a){a.wa()})};r.$=function(a){if(a){var b=$(this,a);b&&b.$(a)}else B(this.o,function(a){a.$()})};window.anno=new Z;Z.prototype.activateSelector=Z.prototype.ea;Z.prototype.addAnnotation=Z.prototype.z;Z.prototype.addHandler=Z.prototype.k;Z.prototype.addPlugin=Z.prototype.wb;Z.prototype.destroy=Z.prototype.R;Z.prototype.getActiveSelector=Z.prototype.qa;Z.prototype.getAnnotations=Z.prototype.J;Z.prototype.getAvailableSelectors=Z.prototype.ra;Z.prototype.hideAnnotations=Z.prototype.X;Z.prototype.hideSelectionWidget=Z.prototype.O;Z.prototype.highlightAnnotation=Z.prototype.r;Z.prototype.makeAnnotatable=Z.prototype.tc;
239Z.prototype.removeAll=Z.prototype.Mb;Z.prototype.removeAnnotation=Z.prototype.w;Z.prototype.reset=Z.prototype.reset;Z.prototype.setActiveSelector=Z.prototype.qb;Z.prototype.setProperties=Z.prototype.Z;Z.prototype.showAnnotations=Z.prototype.wa;Z.prototype.showSelectionWidget=Z.prototype.$;window.annotorious||(window.annotorious={});window.annotorious.plugin||(window.annotorious.plugin={});Z.prototype.setSelectionEnabled=Z.prototype.ce;
  
1(function(){var t=this;var e=t.Backbone;var i=[];var r=i.push;var s=i.slice;var n=i.splice;var a;if(typeof exports!=="undefined"){a=exports}else{a=t.Backbone={}}a.VERSION="1.0.0";var h=t._;if(!h&&typeof require!=="undefined")h=require("underscore");a.$=t.jQuery||t.Zepto||t.ender||t.$;a.noConflict=function(){t.Backbone=e;return this};a.emulateHTTP=false;a.emulateJSON=false;var o=a.Events={on:function(t,e,i){if(!l(this,"on",t,[e,i])||!e)return this;this._events||(this._events={});var r=this._events[t]||(this._events[t]=[]);r.push({callback:e,context:i,ctx:i||this});return this},once:function(t,e,i){if(!l(this,"once",t,[e,i])||!e)return this;var r=this;var s=h.once(function(){r.off(t,s);e.apply(this,arguments)});s._callback=e;return this.on(t,s,i)},off:function(t,e,i){var r,s,n,a,o,u,c,f;if(!this._events||!l(this,"off",t,[e,i]))return this;if(!t&&!e&&!i){this._events={};return this}a=t?[t]:h.keys(this._events);for(o=0,u=a.length;o<u;o++){t=a[o];if(n=this._events[t]){this._events[t]=r=[];if(e||i){for(c=0,f=n.length;c<f;c++){s=n[c];if(e&&e!==s.callback&&e!==s.callback._callback||i&&i!==s.context){r.push(s)}}}if(!r.length)delete this._events[t]}}return this},trigger:function(t){if(!this._events)return this;var e=s.call(arguments,1);if(!l(this,"trigger",t,e))return this;var i=this._events[t];var r=this._events.all;if(i)c(i,e);if(r)c(r,arguments);return this},stopListening:function(t,e,i){var r=this._listeners;if(!r)return this;var s=!e&&!i;if(typeof e==="object")i=this;if(t)(r={})[t._listenerId]=t;for(var n in r){r[n].off(e,i,this);if(s)delete this._listeners[n]}return this}};var u=/\s+/;var l=function(t,e,i,r){if(!i)return true;if(typeof i==="object"){for(var s in i){t[e].apply(t,[s,i[s]].concat(r))}return false}if(u.test(i)){var n=i.split(u);for(var a=0,h=n.length;a<h;a++){t[e].apply(t,[n[a]].concat(r))}return false}return true};var c=function(t,e){var i,r=-1,s=t.length,n=e[0],a=e[1],h=e[2];switch(e.length){case 0:while(++r<s)(i=t[r]).callback.call(i.ctx);return;case 1:while(++r<s)(i=t[r]).callback.call(i.ctx,n);return;case 2:while(++r<s)(i=t[r]).callback.call(i.ctx,n,a);return;case 3:while(++r<s)(i=t[r]).callback.call(i.ctx,n,a,h);return;default:while(++r<s)(i=t[r]).callback.apply(i.ctx,e)}};var f={listenTo:"on",listenToOnce:"once"};h.each(f,function(t,e){o[e]=function(e,i,r){var s=this._listeners||(this._listeners={});var n=e._listenerId||(e._listenerId=h.uniqueId("l"));s[n]=e;if(typeof i==="object")r=this;e[t](i,r,this);return this}});o.bind=o.on;o.unbind=o.off;h.extend(a,o);var d=a.Model=function(t,e){var i;var r=t||{};e||(e={});this.cid=h.uniqueId("c");this.attributes={};h.extend(this,h.pick(e,p));if(e.parse)r=this.parse(r,e)||{};if(i=h.result(this,"defaults")){r=h.defaults({},r,i)}this.set(r,e);this.changed={};this.initialize.apply(this,arguments)};var p=["url","urlRoot","collection"];h.extend(d.prototype,o,{changed:null,validationError:null,idAttribute:"id",initialize:function(){},toJSON:function(t){return h.clone(this.attributes)},sync:function(){return a.sync.apply(this,arguments)},get:function(t){return this.attributes[t]},escape:function(t){return h.escape(this.get(t))},has:function(t){return this.get(t)!=null},set:function(t,e,i){var r,s,n,a,o,u,l,c;if(t==null)return this;if(typeof t==="object"){s=t;i=e}else{(s={})[t]=e}i||(i={});if(!this._validate(s,i))return false;n=i.unset;o=i.silent;a=[];u=this._changing;this._changing=true;if(!u){this._previousAttributes=h.clone(this.attributes);this.changed={}}c=this.attributes,l=this._previousAttributes;if(this.idAttribute in s)this.id=s[this.idAttribute];for(r in s){e=s[r];if(!h.isEqual(c[r],e))a.push(r);if(!h.isEqual(l[r],e)){this.changed[r]=e}else{delete this.changed[r]}n?delete c[r]:c[r]=e}if(!o){if(a.length)this._pending=true;for(var f=0,d=a.length;f<d;f++){this.trigger("change:"+a[f],this,c[a[f]],i)}}if(u)return this;if(!o){while(this._pending){this._pending=false;this.trigger("change",this,i)}}this._pending=false;this._changing=false;return this},unset:function(t,e){return this.set(t,void 0,h.extend({},e,{unset:true}))},clear:function(t){var e={};for(var i in this.attributes)e[i]=void 0;return this.set(e,h.extend({},t,{unset:true}))},hasChanged:function(t){if(t==null)return!h.isEmpty(this.changed);return h.has(this.changed,t)},changedAttributes:function(t){if(!t)return this.hasChanged()?h.clone(this.changed):false;var e,i=false;var r=this._changing?this._previousAttributes:this.attributes;for(var s in t){if(h.isEqual(r[s],e=t[s]))continue;(i||(i={}))[s]=e}return i},previous:function(t){if(t==null||!this._previousAttributes)return null;return this._previousAttributes[t]},previousAttributes:function(){return h.clone(this._previousAttributes)},fetch:function(t){t=t?h.clone(t):{};if(t.parse===void 0)t.parse=true;var e=this;var i=t.success;t.success=function(r){if(!e.set(e.parse(r,t),t))return false;if(i)i(e,r,t);e.trigger("sync",e,r,t)};R(this,t);return this.sync("read",this,t)},save:function(t,e,i){var r,s,n,a=this.attributes;if(t==null||typeof t==="object"){r=t;i=e}else{(r={})[t]=e}if(r&&(!i||!i.wait)&&!this.set(r,i))return false;i=h.extend({validate:true},i);if(!this._validate(r,i))return false;if(r&&i.wait){this.attributes=h.extend({},a,r)}if(i.parse===void 0)i.parse=true;var o=this;var u=i.success;i.success=function(t){o.attributes=a;var e=o.parse(t,i);if(i.wait)e=h.extend(r||{},e);if(h.isObject(e)&&!o.set(e,i)){return false}if(u)u(o,t,i);o.trigger("sync",o,t,i)};R(this,i);s=this.isNew()?"create":i.patch?"patch":"update";if(s==="patch")i.attrs=r;n=this.sync(s,this,i);if(r&&i.wait)this.attributes=a;return n},destroy:function(t){t=t?h.clone(t):{};var e=this;var i=t.success;var r=function(){e.trigger("destroy",e,e.collection,t)};t.success=function(s){if(t.wait||e.isNew())r();if(i)i(e,s,t);if(!e.isNew())e.trigger("sync",e,s,t)};if(this.isNew()){t.success();return false}R(this,t);var s=this.sync("delete",this,t);if(!t.wait)r();return s},url:function(){var t=h.result(this,"urlRoot")||h.result(this.collection,"url")||U();if(this.isNew())return t;return t+(t.charAt(t.length-1)==="/"?"":"/")+encodeURIComponent(this.id)},parse:function(t,e){return t},clone:function(){return new this.constructor(this.attributes)},isNew:function(){return this.id==null},isValid:function(t){return this._validate({},h.extend(t||{},{validate:true}))},_validate:function(t,e){if(!e.validate||!this.validate)return true;t=h.extend({},this.attributes,t);var i=this.validationError=this.validate(t,e)||null;if(!i)return true;this.trigger("invalid",this,i,h.extend(e||{},{validationError:i}));return false}});var v=["keys","values","pairs","invert","pick","omit"];h.each(v,function(t){d.prototype[t]=function(){var e=s.call(arguments);e.unshift(this.attributes);return h[t].apply(h,e)}});var g=a.Collection=function(t,e){e||(e={});if(e.url)this.url=e.url;if(e.model)this.model=e.model;if(e.comparator!==void 0)this.comparator=e.comparator;this._reset();this.initialize.apply(this,arguments);if(t)this.reset(t,h.extend({silent:true},e))};var m={add:true,remove:true,merge:true};var y={add:true,merge:false,remove:false};h.extend(g.prototype,o,{model:d,initialize:function(){},toJSON:function(t){return this.map(function(e){return e.toJSON(t)})},sync:function(){return a.sync.apply(this,arguments)},add:function(t,e){return this.set(t,h.defaults(e||{},y))},remove:function(t,e){t=h.isArray(t)?t.slice():[t];e||(e={});var i,r,s,n;for(i=0,r=t.length;i<r;i++){n=this.get(t[i]);if(!n)continue;delete this._byId[n.id];delete this._byId[n.cid];s=this.indexOf(n);this.models.splice(s,1);this.length--;if(!e.silent){e.index=s;n.trigger("remove",n,this,e)}this._removeReference(n)}return this},set:function(t,e){e=h.defaults(e||{},m);if(e.parse)t=this.parse(t,e);if(!h.isArray(t))t=t?[t]:[];var i,s,a,o,u,l;var c=e.at;var f=this.comparator&&c==null&&e.sort!==false;var d=h.isString(this.comparator)?this.comparator:null;var p=[],v=[],g={};for(i=0,s=t.length;i<s;i++){if(!(a=this._prepareModel(t[i],e)))continue;if(u=this.get(a)){if(e.remove)g[u.cid]=true;if(e.merge){u.set(a.attributes,e);if(f&&!l&&u.hasChanged(d))l=true}}else if(e.add){p.push(a);a.on("all",this._onModelEvent,this);this._byId[a.cid]=a;if(a.id!=null)this._byId[a.id]=a}}if(e.remove){for(i=0,s=this.length;i<s;++i){if(!g[(a=this.models[i]).cid])v.push(a)}if(v.length)this.remove(v,e)}if(p.length){if(f)l=true;this.length+=p.length;if(c!=null){n.apply(this.models,[c,0].concat(p))}else{r.apply(this.models,p)}}if(l)this.sort({silent:true});if(e.silent)return this;for(i=0,s=p.length;i<s;i++){(a=p[i]).trigger("add",a,this,e)}if(l)this.trigger("sort",this,e);return this},reset:function(t,e){e||(e={});for(var i=0,r=this.models.length;i<r;i++){this._removeReference(this.models[i])}e.previousModels=this.models;this._reset();this.add(t,h.extend({silent:true},e));if(!e.silent)this.trigger("reset",this,e);return this},push:function(t,e){t=this._prepareModel(t,e);this.add(t,h.extend({at:this.length},e));return t},pop:function(t){var e=this.at(this.length-1);this.remove(e,t);return e},unshift:function(t,e){t=this._prepareModel(t,e);this.add(t,h.extend({at:0},e));return t},shift:function(t){var e=this.at(0);this.remove(e,t);return e},slice:function(t,e){return this.models.slice(t,e)},get:function(t){if(t==null)return void 0;return this._byId[t.id!=null?t.id:t.cid||t]},at:function(t){return this.models[t]},where:function(t,e){if(h.isEmpty(t))return e?void 0:[];return this[e?"find":"filter"](function(e){for(var i in t){if(t[i]!==e.get(i))return false}return true})},findWhere:function(t){return this.where(t,true)},sort:function(t){if(!this.comparator)throw new Error("Cannot sort a set without a comparator");t||(t={});if(h.isString(this.comparator)||this.comparator.length===1){this.models=this.sortBy(this.comparator,this)}else{this.models.sort(h.bind(this.comparator,this))}if(!t.silent)this.trigger("sort",this,t);return this},sortedIndex:function(t,e,i){e||(e=this.comparator);var r=h.isFunction(e)?e:function(t){return t.get(e)};return h.sortedIndex(this.models,t,r,i)},pluck:function(t){return h.invoke(this.models,"get",t)},fetch:function(t){t=t?h.clone(t):{};if(t.parse===void 0)t.parse=true;var e=t.success;var i=this;t.success=function(r){var s=t.reset?"reset":"set";i[s](r,t);if(e)e(i,r,t);i.trigger("sync",i,r,t)};R(this,t);return this.sync("read",this,t)},create:function(t,e){e=e?h.clone(e):{};if(!(t=this._prepareModel(t,e)))return false;if(!e.wait)this.add(t,e);var i=this;var r=e.success;e.success=function(s){if(e.wait)i.add(t,e);if(r)r(t,s,e)};t.save(null,e);return t},parse:function(t,e){return t},clone:function(){return new this.constructor(this.models)},_reset:function(){this.length=0;this.models=[];this._byId={}},_prepareModel:function(t,e){if(t instanceof d){if(!t.collection)t.collection=this;return t}e||(e={});e.collection=this;var i=new this.model(t,e);if(!i._validate(t,e)){this.trigger("invalid",this,t,e);return false}return i},_removeReference:function(t){if(this===t.collection)delete t.collection;t.off("all",this._onModelEvent,this)},_onModelEvent:function(t,e,i,r){if((t==="add"||t==="remove")&&i!==this)return;if(t==="destroy")this.remove(e,r);if(e&&t==="change:"+e.idAttribute){delete this._byId[e.previous(e.idAttribute)];if(e.id!=null)this._byId[e.id]=e}this.trigger.apply(this,arguments)}});var _=["forEach","each","map","collect","reduce","foldl","inject","reduceRight","foldr","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","max","min","toArray","size","first","head","take","initial","rest","tail","drop","last","without","indexOf","shuffle","lastIndexOf","isEmpty","chain"];h.each(_,function(t){g.prototype[t]=function(){var e=s.call(arguments);e.unshift(this.models);return h[t].apply(h,e)}});var w=["groupBy","countBy","sortBy"];h.each(w,function(t){g.prototype[t]=function(e,i){var r=h.isFunction(e)?e:function(t){return t.get(e)};return h[t](this.models,r,i)}});var b=a.View=function(t){this.cid=h.uniqueId("view");this._configure(t||{});this._ensureElement();this.initialize.apply(this,arguments);this.delegateEvents()};var x=/^(\S+)\s*(.*)$/;var E=["model","collection","el","id","attributes","className","tagName","events"];h.extend(b.prototype,o,{tagName:"div",$:function(t){return this.$el.find(t)},initialize:function(){},render:function(){return this},remove:function(){this.$el.remove();this.stopListening();return this},setElement:function(t,e){if(this.$el)this.undelegateEvents();this.$el=t instanceof a.$?t:a.$(t);this.el=this.$el[0];if(e!==false)this.delegateEvents();return this},delegateEvents:function(t){if(!(t||(t=h.result(this,"events"))))return this;this.undelegateEvents();for(var e in t){var i=t[e];if(!h.isFunction(i))i=this[t[e]];if(!i)continue;var r=e.match(x);var s=r[1],n=r[2];i=h.bind(i,this);s+=".delegateEvents"+this.cid;if(n===""){this.$el.on(s,i)}else{this.$el.on(s,n,i)}}return this},undelegateEvents:function(){this.$el.off(".delegateEvents"+this.cid);return this},_configure:function(t){if(this.options)t=h.extend({},h.result(this,"options"),t);h.extend(this,h.pick(t,E));this.options=t},_ensureElement:function(){if(!this.el){var t=h.extend({},h.result(this,"attributes"));if(this.id)t.id=h.result(this,"id");if(this.className)t["class"]=h.result(this,"className");var e=a.$("<"+h.result(this,"tagName")+">").attr(t);this.setElement(e,false)}else{this.setElement(h.result(this,"el"),false)}}});a.sync=function(t,e,i){var r=k[t];h.defaults(i||(i={}),{emulateHTTP:a.emulateHTTP,emulateJSON:a.emulateJSON});var s={type:r,dataType:"json"};if(!i.url){s.url=h.result(e,"url")||U()}if(i.data==null&&e&&(t==="create"||t==="update"||t==="patch")){s.contentType="application/json";s.data=JSON.stringify(i.attrs||e.toJSON(i))}if(i.emulateJSON){s.contentType="application/x-www-form-urlencoded";s.data=s.data?{model:s.data}:{}}if(i.emulateHTTP&&(r==="PUT"||r==="DELETE"||r==="PATCH")){s.type="POST";if(i.emulateJSON)s.data._method=r;var n=i.beforeSend;i.beforeSend=function(t){t.setRequestHeader("X-HTTP-Method-Override",r);if(n)return n.apply(this,arguments)}}if(s.type!=="GET"&&!i.emulateJSON){s.processData=false}if(s.type==="PATCH"&&window.ActiveXObject&&!(window.external&&window.external.msActiveXFilteringEnabled)){s.xhr=function(){return new ActiveXObject("Microsoft.XMLHTTP")}}var o=i.xhr=a.ajax(h.extend(s,i));e.trigger("request",e,o,i);return o};var k={create:"POST",update:"PUT",patch:"PATCH","delete":"DELETE",read:"GET"};a.ajax=function(){return a.$.ajax.apply(a.$,arguments)};var S=a.Router=function(t){t||(t={});if(t.routes)this.routes=t.routes;this._bindRoutes();this.initialize.apply(this,arguments)};var $=/\((.*?)\)/g;var T=/(\(\?)?:\w+/g;var H=/\*\w+/g;var A=/[\-{}\[\]+?.,\\\^$|#\s]/g;h.extend(S.prototype,o,{initialize:function(){},route:function(t,e,i){if(!h.isRegExp(t))t=this._routeToRegExp(t);if(h.isFunction(e)){i=e;e=""}if(!i)i=this[e];var r=this;a.history.route(t,function(s){var n=r._extractParameters(t,s);i&&i.apply(r,n);r.trigger.apply(r,["route:"+e].concat(n));r.trigger("route",e,n);a.history.trigger("route",r,e,n)});return this},navigate:function(t,e){a.history.navigate(t,e);return this},_bindRoutes:function(){if(!this.routes)return;this.routes=h.result(this,"routes");var t,e=h.keys(this.routes);while((t=e.pop())!=null){this.route(t,this.routes[t])}},_routeToRegExp:function(t){t=t.replace(A,"\\$&").replace($,"(?:$1)?").replace(T,function(t,e){return e?t:"([^/]+)"}).replace(H,"(.*?)");return new RegExp("^"+t+"$")},_extractParameters:function(t,e){var i=t.exec(e).slice(1);return h.map(i,function(t){return t?decodeURIComponent(t):null})}});var I=a.History=function(){this.handlers=[];h.bindAll(this,"checkUrl");if(typeof window!=="undefined"){this.location=window.location;this.history=window.history}};var N=/^[#\/]|\s+$/g;var P=/^\/+|\/+$/g;var O=/msie [\w.]+/;var C=/\/$/;I.started=false;h.extend(I.prototype,o,{interval:50,getHash:function(t){var e=(t||this).location.href.match(/#(.*)$/);return e?e[1]:""},getFragment:function(t,e){if(t==null){if(this._hasPushState||!this._wantsHashChange||e){t=this.location.pathname;var i=this.root.replace(C,"");if(!t.indexOf(i))t=t.substr(i.length)}else{t=this.getHash()}}return t.replace(N,"")},start:function(t){if(I.started)throw new Error("Backbone.history has already been started");I.started=true;this.options=h.extend({},{root:"/"},this.options,t);this.root=this.options.root;this._wantsHashChange=this.options.hashChange!==false;this._wantsPushState=!!this.options.pushState;this._hasPushState=!!(this.options.pushState&&this.history&&this.history.pushState);var e=this.getFragment();var i=document.documentMode;var r=O.exec(navigator.userAgent.toLowerCase())&&(!i||i<=7);this.root=("/"+this.root+"/").replace(P,"/");if(r&&this._wantsHashChange){this.iframe=a.$('<iframe src="javascript:0" tabindex="-1" />').hide().appendTo("body")[0].contentWindow;this.navigate(e)}if(this._hasPushState){a.$(window).on("popstate",this.checkUrl)}else if(this._wantsHashChange&&"onhashchange"in window&&!r){a.$(window).on("hashchange",this.checkUrl)}else if(this._wantsHashChange){this._checkUrlInterval=setInterval(this.checkUrl,this.interval)}this.fragment=e;var s=this.location;var n=s.pathname.replace(/[^\/]$/,"$&/")===this.root;if(this._wantsHashChange&&this._wantsPushState&&!this._hasPushState&&!n){this.fragment=this.getFragment(null,true);this.location.replace(this.root+this.location.search+"#"+this.fragment);return true}else if(this._wantsPushState&&this._hasPushState&&n&&s.hash){this.fragment=this.getHash().replace(N,"");this.history.replaceState({},document.title,this.root+this.fragment+s.search)}if(!this.options.silent)return this.loadUrl()},stop:function(){a.$(window).off("popstate",this.checkUrl).off("hashchange",this.checkUrl);clearInterval(this._checkUrlInterval);I.started=false},route:function(t,e){this.handlers.unshift({route:t,callback:e})},checkUrl:function(t){var e=this.getFragment();if(e===this.fragment&&this.iframe){e=this.getFragment(this.getHash(this.iframe))}if(e===this.fragment)return false;if(this.iframe)this.navigate(e);this.loadUrl()||this.loadUrl(this.getHash())},loadUrl:function(t){var e=this.fragment=this.getFragment(t);var i=h.any(this.handlers,function(t){if(t.route.test(e)){t.callback(e);return true}});return i},navigate:function(t,e){if(!I.started)return false;if(!e||e===true)e={trigger:e};t=this.getFragment(t||"");if(this.fragment===t)return;this.fragment=t;var i=this.root+t;if(this._hasPushState){this.history[e.replace?"replaceState":"pushState"]({},document.title,i)}else if(this._wantsHashChange){this._updateHash(this.location,t,e.replace);if(this.iframe&&t!==this.getFragment(this.getHash(this.iframe))){if(!e.replace)this.iframe.document.open().close();this._updateHash(this.iframe.location,t,e.replace)}}else{return this.location.assign(i)}if(e.trigger)this.loadUrl(t)},_updateHash:function(t,e,i){if(i){var r=t.href.replace(/(javascript:|#).*$/,"");t.replace(r+"#"+e)}else{t.hash="#"+e}}});a.history=new I;var j=function(t,e){var i=this;var r;if(t&&h.has(t,"constructor")){r=t.constructor}else{r=function(){return i.apply(this,arguments)}}h.extend(r,i,e);var s=function(){this.constructor=r};s.prototype=i.prototype;r.prototype=new s;if(t)h.extend(r.prototype,t);r.__super__=i.prototype;return r};d.extend=g.extend=S.extend=b.extend=I.extend=j;var U=function(){throw new Error('A "url" property or function must be specified')};var R=function(t,e){var i=e.error;e.error=function(r){if(i)i(t,r,e);t.trigger("error",t,r,e)}}}).call(this);
2/*
3//@ sourceMappingURL=backbone-min.map
4*/
  
1/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
2//@ sourceMappingURL=jquery-1.10.2.min.map
3*/
4(function(e,t){var n,r,i=typeof t,o=e.location,a=e.document,s=a.documentElement,l=e.jQuery,u=e.$,c={},p=[],f="1.10.2",d=p.concat,h=p.push,g=p.slice,m=p.indexOf,y=c.toString,v=c.hasOwnProperty,b=f.trim,x=function(e,t){return new x.fn.init(e,t,r)},w=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=/\S+/g,C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,N=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,k=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,E=/^[\],:{}\s]*$/,S=/(?:^|:|,)(?:\s*\[)+/g,A=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,j=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,D=/^-ms-/,L=/-([\da-z])/gi,H=function(e,t){return t.toUpperCase()},q=function(e){(a.addEventListener||"load"===e.type||"complete"===a.readyState)&&(_(),x.ready())},_=function(){a.addEventListener?(a.removeEventListener("DOMContentLoaded",q,!1),e.removeEventListener("load",q,!1)):(a.detachEvent("onreadystatechange",q),e.detachEvent("onload",q))};x.fn=x.prototype={jquery:f,constructor:x,init:function(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:N.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof x?n[0]:n,x.merge(this,x.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:a,!0)),k.test(i[1])&&x.isPlainObject(n))for(i in n)x.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(o=a.getElementById(i[2]),o&&o.parentNode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context=a,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):x.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),x.makeArray(e,this))},selector:"",length:0,toArray:function(){return g.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=x.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return x.each(this,e,t)},ready:function(e){return x.ready.promise().done(e),this},slice:function(){return this.pushStack(g.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(x.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:h,sort:[].sort,splice:[].splice},x.fn.init.prototype=x.fn,x.extend=x.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},l=1,u=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},l=2),"object"==typeof s||x.isFunction(s)||(s={}),u===l&&(s=this,--l);u>l;l++)if(null!=(o=arguments[l]))for(i in o)e=s[i],r=o[i],s!==r&&(c&&r&&(x.isPlainObject(r)||(n=x.isArray(r)))?(n?(n=!1,a=e&&x.isArray(e)?e:[]):a=e&&x.isPlainObject(e)?e:{},s[i]=x.extend(c,a,r)):r!==t&&(s[i]=r));return s},x.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===x&&(e.$=u),t&&e.jQuery===x&&(e.jQuery=l),x},isReady:!1,readyWait:1,holdReady:function(e){e?x.readyWait++:x.ready(!0)},ready:function(e){if(e===!0?!--x.readyWait:!x.isReady){if(!a.body)return setTimeout(x.ready);x.isReady=!0,e!==!0&&--x.readyWait>0||(n.resolveWith(a,[x]),x.fn.trigger&&x(a).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===x.type(e)},isArray:Array.isArray||function(e){return"array"===x.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?c[y.call(e)]||"object":typeof e},isPlainObject:function(e){var n;if(!e||"object"!==x.type(e)||e.nodeType||x.isWindow(e))return!1;try{if(e.constructor&&!v.call(e,"constructor")&&!v.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(r){return!1}if(x.support.ownLast)for(n in e)return v.call(e,n);for(n in e);return n===t||v.call(e,n)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||a;var r=k.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=x.buildFragment([e],t,i),i&&x(i).remove(),x.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=x.trim(n),n&&E.test(n.replace(A,"@").replace(j,"]").replace(S,"")))?Function("return "+n)():(x.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||x.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&x.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(D,"ms-").replace(L,H)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,i=0,o=e.length,a=M(e);if(n){if(a){for(;o>i;i++)if(r=t.apply(e[i],n),r===!1)break}else for(i in e)if(r=t.apply(e[i],n),r===!1)break}else if(a){for(;o>i;i++)if(r=t.call(e[i],i,e[i]),r===!1)break}else for(i in e)if(r=t.call(e[i],i,e[i]),r===!1)break;return e},trim:b&&!b.call("\ufeff\u00a0")?function(e){return null==e?"":b.call(e)}:function(e){return null==e?"":(e+"").replace(C,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(M(Object(e))?x.merge(n,"string"==typeof e?[e]:e):h.call(n,e)),n},inArray:function(e,t,n){var r;if(t){if(m)return m.call(t,e,n);for(r=t.length,n=n?0>n?Math.max(0,r+n):n:0;r>n;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,n){var r=n.length,i=e.length,o=0;if("number"==typeof r)for(;r>o;o++)e[i++]=n[o];else while(n[o]!==t)e[i++]=n[o++];return e.length=i,e},grep:function(e,t,n){var r,i=[],o=0,a=e.length;for(n=!!n;a>o;o++)r=!!t(e[o],o),n!==r&&i.push(e[o]);return i},map:function(e,t,n){var r,i=0,o=e.length,a=M(e),s=[];if(a)for(;o>i;i++)r=t(e[i],i,n),null!=r&&(s[s.length]=r);else for(i in e)r=t(e[i],i,n),null!=r&&(s[s.length]=r);return d.apply([],s)},guid:1,proxy:function(e,n){var r,i,o;return"string"==typeof n&&(o=e[n],n=e,e=o),x.isFunction(e)?(r=g.call(arguments,2),i=function(){return e.apply(n||this,r.concat(g.call(arguments)))},i.guid=e.guid=e.guid||x.guid++,i):t},access:function(e,n,r,i,o,a,s){var l=0,u=e.length,c=null==r;if("object"===x.type(r)){o=!0;for(l in r)x.access(e,n,l,r[l],!0,a,s)}else if(i!==t&&(o=!0,x.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=function(e,t,n){return c.call(x(e),n)})),n))for(;u>l;l++)n(e[l],r,s?i:i.call(e[l],l,n(e[l],r)));return o?e:c?n.call(e):u?n(e[0],r):a},now:function(){return(new Date).getTime()},swap:function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i}}),x.ready.promise=function(t){if(!n)if(n=x.Deferred(),"complete"===a.readyState)setTimeout(x.ready);else if(a.addEventListener)a.addEventListener("DOMContentLoaded",q,!1),e.addEventListener("load",q,!1);else{a.attachEvent("onreadystatechange",q),e.attachEvent("onload",q);var r=!1;try{r=null==e.frameElement&&a.documentElement}catch(i){}r&&r.doScroll&&function o(){if(!x.isReady){try{r.doScroll("left")}catch(e){return setTimeout(o,50)}_(),x.ready()}}()}return n.promise(t)},x.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){c["[object "+t+"]"]=t.toLowerCase()});function M(e){var t=e.length,n=x.type(e);return x.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"number"==typeof t&&t>0&&t-1 in e)}r=x(a),function(e,t){var n,r,i,o,a,s,l,u,c,p,f,d,h,g,m,y,v,b="sizzle"+-new Date,w=e.document,T=0,C=0,N=st(),k=st(),E=st(),S=!1,A=function(e,t){return e===t?(S=!0,0):0},j=typeof t,D=1<<31,L={}.hasOwnProperty,H=[],q=H.pop,_=H.push,M=H.push,O=H.slice,F=H.indexOf||function(e){var t=0,n=this.length;for(;n>t;t++)if(this[t]===e)return t;return-1},B="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",P="[\\x20\\t\\r\\n\\f]",R="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",W=R.replace("w","w#"),$="\\["+P+"*("+R+")"+P+"*(?:([*^$|!~]?=)"+P+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+W+")|)|)"+P+"*\\]",I=":("+R+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+$.replace(3,8)+")*)|.*)\\)|)",z=RegExp("^"+P+"+|((?:^|[^\\\\])(?:\\\\.)*)"+P+"+$","g"),X=RegExp("^"+P+"*,"+P+"*"),U=RegExp("^"+P+"*([>+~]|"+P+")"+P+"*"),V=RegExp(P+"*[+~]"),Y=RegExp("="+P+"*([^\\]'\"]*)"+P+"*\\]","g"),J=RegExp(I),G=RegExp("^"+W+"$"),Q={ID:RegExp("^#("+R+")"),CLASS:RegExp("^\\.("+R+")"),TAG:RegExp("^("+R.replace("w","w*")+")"),ATTR:RegExp("^"+$),PSEUDO:RegExp("^"+I),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+P+"*(even|odd|(([+-]|)(\\d*)n|)"+P+"*(?:([+-]|)"+P+"*(\\d+)|))"+P+"*\\)|)","i"),bool:RegExp("^(?:"+B+")$","i"),needsContext:RegExp("^"+P+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+P+"*((?:-\\d)?\\d*)"+P+"*\\)|)(?=[^-]|$)","i")},K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,et=/^(?:input|select|textarea|button)$/i,tt=/^h\d$/i,nt=/'|\\/g,rt=RegExp("\\\\([\\da-f]{1,6}"+P+"?|("+P+")|.)","ig"),it=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(55296|r>>10,56320|1023&r)};try{M.apply(H=O.call(w.childNodes),w.childNodes),H[w.childNodes.length].nodeType}catch(ot){M={apply:H.length?function(e,t){_.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function at(e,t,n,i){var o,a,s,l,u,c,d,m,y,x;if((t?t.ownerDocument||t:w)!==f&&p(t),t=t||f,n=n||[],!e||"string"!=typeof e)return n;if(1!==(l=t.nodeType)&&9!==l)return[];if(h&&!i){if(o=Z.exec(e))if(s=o[1]){if(9===l){if(a=t.getElementById(s),!a||!a.parentNode)return n;if(a.id===s)return n.push(a),n}else if(t.ownerDocument&&(a=t.ownerDocument.getElementById(s))&&v(t,a)&&a.id===s)return n.push(a),n}else{if(o[2])return M.apply(n,t.getElementsByTagName(e)),n;if((s=o[3])&&r.getElementsByClassName&&t.getElementsByClassName)return M.apply(n,t.getElementsByClassName(s)),n}if(r.qsa&&(!g||!g.test(e))){if(m=d=b,y=t,x=9===l&&e,1===l&&"object"!==t.nodeName.toLowerCase()){c=mt(e),(d=t.getAttribute("id"))?m=d.replace(nt,"\\$&"):t.setAttribute("id",m),m="[id='"+m+"'] ",u=c.length;while(u--)c[u]=m+yt(c[u]);y=V.test(e)&&t.parentNode||t,x=c.join(",")}if(x)try{return M.apply(n,y.querySelectorAll(x)),n}catch(T){}finally{d||t.removeAttribute("id")}}}return kt(e.replace(z,"$1"),t,n,i)}function st(){var e=[];function t(n,r){return e.push(n+=" ")>o.cacheLength&&delete t[e.shift()],t[n]=r}return t}function lt(e){return e[b]=!0,e}function ut(e){var t=f.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ct(e,t){var n=e.split("|"),r=e.length;while(r--)o.attrHandle[n[r]]=t}function pt(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||D)-(~e.sourceIndex||D);if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function ft(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function dt(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function ht(e){return lt(function(t){return t=+t,lt(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}s=at.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},r=at.support={},p=at.setDocument=function(e){var n=e?e.ownerDocument||e:w,i=n.defaultView;return n!==f&&9===n.nodeType&&n.documentElement?(f=n,d=n.documentElement,h=!s(n),i&&i.attachEvent&&i!==i.top&&i.attachEvent("onbeforeunload",function(){p()}),r.attributes=ut(function(e){return e.className="i",!e.getAttribute("className")}),r.getElementsByTagName=ut(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),r.getElementsByClassName=ut(function(e){return e.innerHTML="<div class='a'></div><div class='a i'></div>",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),r.getById=ut(function(e){return d.appendChild(e).id=b,!n.getElementsByName||!n.getElementsByName(b).length}),r.getById?(o.find.ID=function(e,t){if(typeof t.getElementById!==j&&h){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){return e.getAttribute("id")===t}}):(delete o.find.ID,o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){var n=typeof e.getAttributeNode!==j&&e.getAttributeNode("id");return n&&n.value===t}}),o.find.TAG=r.getElementsByTagName?function(e,n){return typeof n.getElementsByTagName!==j?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},o.find.CLASS=r.getElementsByClassName&&function(e,n){return typeof n.getElementsByClassName!==j&&h?n.getElementsByClassName(e):t},m=[],g=[],(r.qsa=K.test(n.querySelectorAll))&&(ut(function(e){e.innerHTML="<select><option selected=''></option></select>",e.querySelectorAll("[selected]").length||g.push("\\["+P+"*(?:value|"+B+")"),e.querySelectorAll(":checked").length||g.push(":checked")}),ut(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t",""),e.querySelectorAll("[t^='']").length&&g.push("[*^$]="+P+"*(?:''|\"\")"),e.querySelectorAll(":enabled").length||g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(r.matchesSelector=K.test(y=d.webkitMatchesSelector||d.mozMatchesSelector||d.oMatchesSelector||d.msMatchesSelector))&&ut(function(e){r.disconnectedMatch=y.call(e,"div"),y.call(e,"[s!='']:x"),m.push("!=",I)}),g=g.length&&RegExp(g.join("|")),m=m.length&&RegExp(m.join("|")),v=K.test(d.contains)||d.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},A=d.compareDocumentPosition?function(e,t){if(e===t)return S=!0,0;var i=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t);return i?1&i||!r.sortDetached&&t.compareDocumentPosition(e)===i?e===n||v(w,e)?-1:t===n||v(w,t)?1:c?F.call(c,e)-F.call(c,t):0:4&i?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,o=e.parentNode,a=t.parentNode,s=[e],l=[t];if(e===t)return S=!0,0;if(!o||!a)return e===n?-1:t===n?1:o?-1:a?1:c?F.call(c,e)-F.call(c,t):0;if(o===a)return pt(e,t);r=e;while(r=r.parentNode)s.unshift(r);r=t;while(r=r.parentNode)l.unshift(r);while(s[i]===l[i])i++;return i?pt(s[i],l[i]):s[i]===w?-1:l[i]===w?1:0},n):f},at.matches=function(e,t){return at(e,null,null,t)},at.matchesSelector=function(e,t){if((e.ownerDocument||e)!==f&&p(e),t=t.replace(Y,"='$1']"),!(!r.matchesSelector||!h||m&&m.test(t)||g&&g.test(t)))try{var n=y.call(e,t);if(n||r.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(i){}return at(t,f,null,[e]).length>0},at.contains=function(e,t){return(e.ownerDocument||e)!==f&&p(e),v(e,t)},at.attr=function(e,n){(e.ownerDocument||e)!==f&&p(e);var i=o.attrHandle[n.toLowerCase()],a=i&&L.call(o.attrHandle,n.toLowerCase())?i(e,n,!h):t;return a===t?r.attributes||!h?e.getAttribute(n):(a=e.getAttributeNode(n))&&a.specified?a.value:null:a},at.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},at.uniqueSort=function(e){var t,n=[],i=0,o=0;if(S=!r.detectDuplicates,c=!r.sortStable&&e.slice(0),e.sort(A),S){while(t=e[o++])t===e[o]&&(i=n.push(o));while(i--)e.splice(n[i],1)}return e},a=at.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=a(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=a(t);return n},o=at.selectors={cacheLength:50,createPseudo:lt,match:Q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(rt,it),e[3]=(e[4]||e[5]||"").replace(rt,it),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||at.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&at.error(e[0]),e},PSEUDO:function(e){var n,r=!e[5]&&e[2];return Q.CHILD.test(e[0])?null:(e[3]&&e[4]!==t?e[2]=e[4]:r&&J.test(r)&&(n=mt(r,!0))&&(n=r.indexOf(")",r.length-n)-r.length)&&(e[0]=e[0].slice(0,n),e[2]=r.slice(0,n)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(rt,it).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=N[e+" "];return t||(t=RegExp("(^|"+P+")"+e+"("+P+"|$)"))&&N(e,function(e){return t.test("string"==typeof e.className&&e.className||typeof e.getAttribute!==j&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=at.attr(r,e);return null==i?"!="===t:t?(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i+" ").indexOf(n)>-1:"|="===t?i===n||i.slice(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var u,c,p,f,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!l&&!s;if(m){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){c=m[b]||(m[b]={}),u=c[e]||[],d=u[0]===T&&u[1],f=u[0]===T&&u[2],p=d&&m.childNodes[d];while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if(1===p.nodeType&&++f&&p===t){c[e]=[T,d,f];break}}else if(v&&(u=(t[b]||(t[b]={}))[e])&&u[0]===T)f=u[1];else while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if((s?p.nodeName.toLowerCase()===y:1===p.nodeType)&&++f&&(v&&((p[b]||(p[b]={}))[e]=[T,f]),p===t))break;return f-=i,f===r||0===f%r&&f/r>=0}}},PSEUDO:function(e,t){var n,r=o.pseudos[e]||o.setFilters[e.toLowerCase()]||at.error("unsupported pseudo: "+e);return r[b]?r(t):r.length>1?(n=[e,e,"",t],o.setFilters.hasOwnProperty(e.toLowerCase())?lt(function(e,n){var i,o=r(e,t),a=o.length;while(a--)i=F.call(e,o[a]),e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:lt(function(e){var t=[],n=[],r=l(e.replace(z,"$1"));return r[b]?lt(function(e,t,n,i){var o,a=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:lt(function(e){return function(t){return at(e,t).length>0}}),contains:lt(function(e){return function(t){return(t.textContent||t.innerText||a(t)).indexOf(e)>-1}}),lang:lt(function(e){return G.test(e||"")||at.error("unsupported lang: "+e),e=e.replace(rt,it).toLowerCase(),function(t){var n;do if(n=h?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===d},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)return!1;return!0},parent:function(e){return!o.pseudos.empty(e)},header:function(e){return tt.test(e.nodeName)},input:function(e){return et.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type)},first:ht(function(){return[0]}),last:ht(function(e,t){return[t-1]}),eq:ht(function(e,t,n){return[0>n?n+t:n]}),even:ht(function(e,t){var n=0;for(;t>n;n+=2)e.push(n);return e}),odd:ht(function(e,t){var n=1;for(;t>n;n+=2)e.push(n);return e}),lt:ht(function(e,t,n){var r=0>n?n+t:n;for(;--r>=0;)e.push(r);return e}),gt:ht(function(e,t,n){var r=0>n?n+t:n;for(;t>++r;)e.push(r);return e})}},o.pseudos.nth=o.pseudos.eq;for(n in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})o.pseudos[n]=ft(n);for(n in{submit:!0,reset:!0})o.pseudos[n]=dt(n);function gt(){}gt.prototype=o.filters=o.pseudos,o.setFilters=new gt;function mt(e,t){var n,r,i,a,s,l,u,c=k[e+" "];if(c)return t?0:c.slice(0);s=e,l=[],u=o.preFilter;while(s){(!n||(r=X.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),l.push(i=[])),n=!1,(r=U.exec(s))&&(n=r.shift(),i.push({value:n,type:r[0].replace(z," ")}),s=s.slice(n.length));for(a in o.filter)!(r=Q[a].exec(s))||u[a]&&!(r=u[a](r))||(n=r.shift(),i.push({value:n,type:a,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?at.error(e):k(e,l).slice(0)}function yt(e){var t=0,n=e.length,r="";for(;n>t;t++)r+=e[t].value;return r}function vt(e,t,n){var r=t.dir,o=n&&"parentNode"===r,a=C++;return t.first?function(t,n,i){while(t=t[r])if(1===t.nodeType||o)return e(t,n,i)}:function(t,n,s){var l,u,c,p=T+" "+a;if(s){while(t=t[r])if((1===t.nodeType||o)&&e(t,n,s))return!0}else while(t=t[r])if(1===t.nodeType||o)if(c=t[b]||(t[b]={}),(u=c[r])&&u[0]===p){if((l=u[1])===!0||l===i)return l===!0}else if(u=c[r]=[p],u[1]=e(t,n,s)||i,u[1]===!0)return!0}}function bt(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xt(e,t,n,r,i){var o,a=[],s=0,l=e.length,u=null!=t;for(;l>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),u&&t.push(s));return a}function wt(e,t,n,r,i,o){return r&&!r[b]&&(r=wt(r)),i&&!i[b]&&(i=wt(i,o)),lt(function(o,a,s,l){var u,c,p,f=[],d=[],h=a.length,g=o||Nt(t||"*",s.nodeType?[s]:s,[]),m=!e||!o&&t?g:xt(g,f,e,s,l),y=n?i||(o?e:h||r)?[]:a:m;if(n&&n(m,y,s,l),r){u=xt(y,d),r(u,[],s,l),c=u.length;while(c--)(p=u[c])&&(y[d[c]]=!(m[d[c]]=p))}if(o){if(i||e){if(i){u=[],c=y.length;while(c--)(p=y[c])&&u.push(m[c]=p);i(null,y=[],u,l)}c=y.length;while(c--)(p=y[c])&&(u=i?F.call(o,p):f[c])>-1&&(o[u]=!(a[u]=p))}}else y=xt(y===a?y.splice(h,y.length):y),i?i(null,a,y,l):M.apply(a,y)})}function Tt(e){var t,n,r,i=e.length,a=o.relative[e[0].type],s=a||o.relative[" "],l=a?1:0,c=vt(function(e){return e===t},s,!0),p=vt(function(e){return F.call(t,e)>-1},s,!0),f=[function(e,n,r){return!a&&(r||n!==u)||((t=n).nodeType?c(e,n,r):p(e,n,r))}];for(;i>l;l++)if(n=o.relative[e[l].type])f=[vt(bt(f),n)];else{if(n=o.filter[e[l].type].apply(null,e[l].matches),n[b]){for(r=++l;i>r;r++)if(o.relative[e[r].type])break;return wt(l>1&&bt(f),l>1&&yt(e.slice(0,l-1).concat({value:" "===e[l-2].type?"*":""})).replace(z,"$1"),n,r>l&&Tt(e.slice(l,r)),i>r&&Tt(e=e.slice(r)),i>r&&yt(e))}f.push(n)}return bt(f)}function Ct(e,t){var n=0,r=t.length>0,a=e.length>0,s=function(s,l,c,p,d){var h,g,m,y=[],v=0,b="0",x=s&&[],w=null!=d,C=u,N=s||a&&o.find.TAG("*",d&&l.parentNode||l),k=T+=null==C?1:Math.random()||.1;for(w&&(u=l!==f&&l,i=n);null!=(h=N[b]);b++){if(a&&h){g=0;while(m=e[g++])if(m(h,l,c)){p.push(h);break}w&&(T=k,i=++n)}r&&((h=!m&&h)&&v--,s&&x.push(h))}if(v+=b,r&&b!==v){g=0;while(m=t[g++])m(x,y,l,c);if(s){if(v>0)while(b--)x[b]||y[b]||(y[b]=q.call(p));y=xt(y)}M.apply(p,y),w&&!s&&y.length>0&&v+t.length>1&&at.uniqueSort(p)}return w&&(T=k,u=C),x};return r?lt(s):s}l=at.compile=function(e,t){var n,r=[],i=[],o=E[e+" "];if(!o){t||(t=mt(e)),n=t.length;while(n--)o=Tt(t[n]),o[b]?r.push(o):i.push(o);o=E(e,Ct(i,r))}return o};function Nt(e,t,n){var r=0,i=t.length;for(;i>r;r++)at(e,t[r],n);return n}function kt(e,t,n,i){var a,s,u,c,p,f=mt(e);if(!i&&1===f.length){if(s=f[0]=f[0].slice(0),s.length>2&&"ID"===(u=s[0]).type&&r.getById&&9===t.nodeType&&h&&o.relative[s[1].type]){if(t=(o.find.ID(u.matches[0].replace(rt,it),t)||[])[0],!t)return n;e=e.slice(s.shift().value.length)}a=Q.needsContext.test(e)?0:s.length;while(a--){if(u=s[a],o.relative[c=u.type])break;if((p=o.find[c])&&(i=p(u.matches[0].replace(rt,it),V.test(s[0].type)&&t.parentNode||t))){if(s.splice(a,1),e=i.length&&yt(s),!e)return M.apply(n,i),n;break}}}return l(e,f)(i,t,!h,n,V.test(e)),n}r.sortStable=b.split("").sort(A).join("")===b,r.detectDuplicates=S,p(),r.sortDetached=ut(function(e){return 1&e.compareDocumentPosition(f.createElement("div"))}),ut(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||ct("type|href|height|width",function(e,n,r){return r?t:e.getAttribute(n,"type"===n.toLowerCase()?1:2)}),r.attributes&&ut(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||ct("value",function(e,n,r){return r||"input"!==e.nodeName.toLowerCase()?t:e.defaultValue}),ut(function(e){return null==e.getAttribute("disabled")})||ct(B,function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&i.specified?i.value:e[n]===!0?n.toLowerCase():null}),x.find=at,x.expr=at.selectors,x.expr[":"]=x.expr.pseudos,x.unique=at.uniqueSort,x.text=at.getText,x.isXMLDoc=at.isXML,x.contains=at.contains}(e);var O={};function F(e){var t=O[e]={};return x.each(e.match(T)||[],function(e,n){t[n]=!0}),t}x.Callbacks=function(e){e="string"==typeof e?O[e]||F(e):x.extend({},e);var n,r,i,o,a,s,l=[],u=!e.once&&[],c=function(t){for(r=e.memory&&t,i=!0,a=s||0,s=0,o=l.length,n=!0;l&&o>a;a++)if(l[a].apply(t[0],t[1])===!1&&e.stopOnFalse){r=!1;break}n=!1,l&&(u?u.length&&c(u.shift()):r?l=[]:p.disable())},p={add:function(){if(l){var t=l.length;(function i(t){x.each(t,function(t,n){var r=x.type(n);"function"===r?e.unique&&p.has(n)||l.push(n):n&&n.length&&"string"!==r&&i(n)})})(arguments),n?o=l.length:r&&(s=t,c(r))}return this},remove:function(){return l&&x.each(arguments,function(e,t){var r;while((r=x.inArray(t,l,r))>-1)l.splice(r,1),n&&(o>=r&&o--,a>=r&&a--)}),this},has:function(e){return e?x.inArray(e,l)>-1:!(!l||!l.length)},empty:function(){return l=[],o=0,this},disable:function(){return l=u=r=t,this},disabled:function(){return!l},lock:function(){return u=t,r||p.disable(),this},locked:function(){return!u},fireWith:function(e,t){return!l||i&&!u||(t=t||[],t=[e,t.slice?t.slice():t],n?u.push(t):c(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},x.extend({Deferred:function(e){var t=[["resolve","done",x.Callbacks("once memory"),"resolved"],["reject","fail",x.Callbacks("once memory"),"rejected"],["notify","progress",x.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return x.Deferred(function(n){x.each(t,function(t,o){var a=o[0],s=x.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&x.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"With"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?x.extend(e,r):r}},i={};return r.pipe=r.then,x.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=g.call(arguments),r=n.length,i=1!==r||e&&x.isFunction(e.promise)?r:0,o=1===i?e:x.Deferred(),a=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?g.call(arguments):r,n===s?o.notifyWith(t,n):--i||o.resolveWith(t,n)}},s,l,u;if(r>1)for(s=Array(r),l=Array(r),u=Array(r);r>t;t++)n[t]&&x.isFunction(n[t].promise)?n[t].promise().done(a(t,u,n)).fail(o.reject).progress(a(t,l,s)):--i;return i||o.resolveWith(u,n),o.promise()}}),x.support=function(t){var n,r,o,s,l,u,c,p,f,d=a.createElement("div");if(d.setAttribute("className","t"),d.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",n=d.getElementsByTagName("*")||[],r=d.getElementsByTagName("a")[0],!r||!r.style||!n.length)return t;s=a.createElement("select"),u=s.appendChild(a.createElement("option")),o=d.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t.getSetAttribute="t"!==d.className,t.leadingWhitespace=3===d.firstChild.nodeType,t.tbody=!d.getElementsByTagName("tbody").length,t.htmlSerialize=!!d.getElementsByTagName("link").length,t.style=/top/.test(r.getAttribute("style")),t.hrefNormalized="/a"===r.getAttribute("href"),t.opacity=/^0.5/.test(r.style.opacity),t.cssFloat=!!r.style.cssFloat,t.checkOn=!!o.value,t.optSelected=u.selected,t.enctype=!!a.createElement("form").enctype,t.html5Clone="<:nav></:nav>"!==a.createElement("nav").cloneNode(!0).outerHTML,t.inlineBlockNeedsLayout=!1,t.shrinkWrapBlocks=!1,t.pixelPosition=!1,t.deleteExpando=!0,t.noCloneEvent=!0,t.reliableMarginRight=!0,t.boxSizingReliable=!0,o.checked=!0,t.noCloneChecked=o.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!u.disabled;try{delete d.test}catch(h){t.deleteExpando=!1}o=a.createElement("input"),o.setAttribute("value",""),t.input=""===o.getAttribute("value"),o.value="t",o.setAttribute("type","radio"),t.radioValue="t"===o.value,o.setAttribute("checked","t"),o.setAttribute("name","t"),l=a.createDocumentFragment(),l.appendChild(o),t.appendChecked=o.checked,t.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,d.attachEvent&&(d.attachEvent("onclick",function(){t.noCloneEvent=!1}),d.cloneNode(!0).click());for(f in{submit:!0,change:!0,focusin:!0})d.setAttribute(c="on"+f,"t"),t[f+"Bubbles"]=c in e||d.attributes[c].expando===!1;d.style.backgroundClip="content-box",d.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===d.style.backgroundClip;for(f in x(t))break;return t.ownLast="0"!==f,x(function(){var n,r,o,s="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",l=a.getElementsByTagName("body")[0];l&&(n=a.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",l.appendChild(n).appendChild(d),d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",o=d.getElementsByTagName("td"),o[0].style.cssText="padding:0;margin:0;border:0;display:none",p=0===o[0].offsetHeight,o[0].style.display="",o[1].style.display="none",t.reliableHiddenOffsets=p&&0===o[0].offsetHeight,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",x.swap(l,null!=l.style.zoom?{zoom:1}:{},function(){t.boxSizing=4===d.offsetWidth}),e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(d,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(d,null)||{width:"4px"}).width,r=d.appendChild(a.createElement("div")),r.style.cssText=d.style.cssText=s,r.style.marginRight=r.style.width="0",d.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),typeof d.style.zoom!==i&&(d.innerHTML="",d.style.cssText=s+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=3===d.offsetWidth,d.style.display="block",d.innerHTML="<div></div>",d.firstChild.style.width="5px",t.shrinkWrapBlocks=3!==d.offsetWidth,t.inlineBlockNeedsLayout&&(l.style.zoom=1)),l.removeChild(n),n=d=o=r=null)}),n=s=l=u=r=o=null,t
5}({});var B=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;function R(e,n,r,i){if(x.acceptData(e)){var o,a,s=x.expando,l=e.nodeType,u=l?x.cache:e,c=l?e[s]:e[s]&&s;if(c&&u[c]&&(i||u[c].data)||r!==t||"string"!=typeof n)return c||(c=l?e[s]=p.pop()||x.guid++:s),u[c]||(u[c]=l?{}:{toJSON:x.noop}),("object"==typeof n||"function"==typeof n)&&(i?u[c]=x.extend(u[c],n):u[c].data=x.extend(u[c].data,n)),a=u[c],i||(a.data||(a.data={}),a=a.data),r!==t&&(a[x.camelCase(n)]=r),"string"==typeof n?(o=a[n],null==o&&(o=a[x.camelCase(n)])):o=a,o}}function W(e,t,n){if(x.acceptData(e)){var r,i,o=e.nodeType,a=o?x.cache:e,s=o?e[x.expando]:x.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){x.isArray(t)?t=t.concat(x.map(t,x.camelCase)):t in r?t=[t]:(t=x.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;while(i--)delete r[t[i]];if(n?!I(r):!x.isEmptyObject(r))return}(n||(delete a[s].data,I(a[s])))&&(o?x.cleanData([e],!0):x.support.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}x.extend({cache:{},noData:{applet:!0,embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?x.cache[e[x.expando]]:e[x.expando],!!e&&!I(e)},data:function(e,t,n){return R(e,t,n)},removeData:function(e,t){return W(e,t)},_data:function(e,t,n){return R(e,t,n,!0)},_removeData:function(e,t){return W(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&x.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),x.fn.extend({data:function(e,n){var r,i,o=null,a=0,s=this[0];if(e===t){if(this.length&&(o=x.data(s),1===s.nodeType&&!x._data(s,"parsedAttrs"))){for(r=s.attributes;r.length>a;a++)i=r[a].name,0===i.indexOf("data-")&&(i=x.camelCase(i.slice(5)),$(s,i,o[i]));x._data(s,"parsedAttrs",!0)}return o}return"object"==typeof e?this.each(function(){x.data(this,e)}):arguments.length>1?this.each(function(){x.data(this,e,n)}):s?$(s,e,x.data(s,e)):null},removeData:function(e){return this.each(function(){x.removeData(this,e)})}});function $(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(P,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:B.test(r)?x.parseJSON(r):r}catch(o){}x.data(e,n,r)}else r=t}return r}function I(e){var t;for(t in e)if(("data"!==t||!x.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}x.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=x._data(e,n),r&&(!i||x.isArray(r)?i=x._data(e,n,x.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,i=n.shift(),o=x._queueHooks(e,t),a=function(){x.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return x._data(e,n)||x._data(e,n,{empty:x.Callbacks("once memory").add(function(){x._removeData(e,t+"queue"),x._removeData(e,n)})})}}),x.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?x.queue(this[0],e):n===t?this:this.each(function(){var t=x.queue(this,e,n);x._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&x.dequeue(this,e)})},dequeue:function(e){return this.each(function(){x.dequeue(this,e)})},delay:function(e,t){return e=x.fx?x.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=x.Deferred(),a=this,s=this.length,l=function(){--i||o.resolveWith(a,[a])};"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=x._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),o.promise(n)}});var z,X,U=/[\t\r\n\f]/g,V=/\r/g,Y=/^(?:input|select|textarea|button|object)$/i,J=/^(?:a|area)$/i,G=/^(?:checked|selected)$/i,Q=x.support.getSetAttribute,K=x.support.input;x.fn.extend({attr:function(e,t){return x.access(this,x.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){x.removeAttr(this,e)})},prop:function(e,t){return x.access(this,x.prop,e,t,arguments.length>1)},removeProp:function(e){return e=x.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,l="string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):" ")){o=0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=x.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,l=0===arguments.length||"string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):"")){o=0;while(i=t[o++])while(r.indexOf(" "+i+" ")>=0)r=r.replace(" "+i+" "," ");n.className=e?x.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):x.isFunction(e)?this.each(function(n){x(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n){var t,r=0,o=x(this),a=e.match(T)||[];while(t=a[r++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else(n===i||"boolean"===n)&&(this.className&&x._data(this,"__className__",this.className),this.className=this.className||e===!1?"":x._data(this,"__className__")||"")})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(U," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)return i=x.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(o=i?e.call(this,n,x(this).val()):e,null==o?o="":"number"==typeof o?o+="":x.isArray(o)&&(o=x.map(o,function(e){return null==e?"":e+""})),r=x.valHooks[this.type]||x.valHooks[this.nodeName.toLowerCase()],r&&"set"in r&&r.set(this,o,"value")!==t||(this.value=o))});if(o)return r=x.valHooks[o.type]||x.valHooks[o.nodeName.toLowerCase()],r&&"get"in r&&(n=r.get(o,"value"))!==t?n:(n=o.value,"string"==typeof n?n.replace(V,""):null==n?"":n)}}}),x.extend({valHooks:{option:{get:function(e){var t=x.find.attr(e,"value");return null!=t?t:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,a=o?null:[],s=o?i+1:r.length,l=0>i?s:o?i:0;for(;s>l;l++)if(n=r[l],!(!n.selected&&l!==i||(x.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&x.nodeName(n.parentNode,"optgroup"))){if(t=x(n).val(),o)return t;a.push(t)}return a},set:function(e,t){var n,r,i=e.options,o=x.makeArray(t),a=i.length;while(a--)r=i[a],(r.selected=x.inArray(x(r).val(),o)>=0)&&(n=!0);return n||(e.selectedIndex=-1),o}}},attr:function(e,n,r){var o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return typeof e.getAttribute===i?x.prop(e,n,r):(1===s&&x.isXMLDoc(e)||(n=n.toLowerCase(),o=x.attrHooks[n]||(x.expr.match.bool.test(n)?X:z)),r===t?o&&"get"in o&&null!==(a=o.get(e,n))?a:(a=x.find.attr(e,n),null==a?t:a):null!==r?o&&"set"in o&&(a=o.set(e,r,n))!==t?a:(e.setAttribute(n,r+""),r):(x.removeAttr(e,n),t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(T);if(o&&1===e.nodeType)while(n=o[i++])r=x.propFix[n]||n,x.expr.match.bool.test(n)?K&&Q||!G.test(n)?e[r]=!1:e[x.camelCase("default-"+n)]=e[r]=!1:x.attr(e,n,""),e.removeAttribute(Q?n:r)},attrHooks:{type:{set:function(e,t){if(!x.support.radioValue&&"radio"===t&&x.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{"for":"htmlFor","class":"className"},prop:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!x.isXMLDoc(e),a&&(n=x.propFix[n]||n,o=x.propHooks[n]),r!==t?o&&"set"in o&&(i=o.set(e,r,n))!==t?i:e[n]=r:o&&"get"in o&&null!==(i=o.get(e,n))?i:e[n]},propHooks:{tabIndex:{get:function(e){var t=x.find.attr(e,"tabindex");return t?parseInt(t,10):Y.test(e.nodeName)||J.test(e.nodeName)&&e.href?0:-1}}}}),X={set:function(e,t,n){return t===!1?x.removeAttr(e,n):K&&Q||!G.test(n)?e.setAttribute(!Q&&x.propFix[n]||n,n):e[x.camelCase("default-"+n)]=e[n]=!0,n}},x.each(x.expr.match.bool.source.match(/\w+/g),function(e,n){var r=x.expr.attrHandle[n]||x.find.attr;x.expr.attrHandle[n]=K&&Q||!G.test(n)?function(e,n,i){var o=x.expr.attrHandle[n],a=i?t:(x.expr.attrHandle[n]=t)!=r(e,n,i)?n.toLowerCase():null;return x.expr.attrHandle[n]=o,a}:function(e,n,r){return r?t:e[x.camelCase("default-"+n)]?n.toLowerCase():null}}),K&&Q||(x.attrHooks.value={set:function(e,n,r){return x.nodeName(e,"input")?(e.defaultValue=n,t):z&&z.set(e,n,r)}}),Q||(z={set:function(e,n,r){var i=e.getAttributeNode(r);return i||e.setAttributeNode(i=e.ownerDocument.createAttribute(r)),i.value=n+="","value"===r||n===e.getAttribute(r)?n:t}},x.expr.attrHandle.id=x.expr.attrHandle.name=x.expr.attrHandle.coords=function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&""!==i.value?i.value:null},x.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n);return r&&r.specified?r.value:t},set:z.set},x.attrHooks.contenteditable={set:function(e,t,n){z.set(e,""===t?!1:t,n)}},x.each(["width","height"],function(e,n){x.attrHooks[n]={set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}}})),x.support.hrefNormalized||x.each(["href","src"],function(e,t){x.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}}),x.support.style||(x.attrHooks.style={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style.cssText=t+""}}),x.support.optSelected||(x.propHooks.selected={get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}}),x.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){x.propFix[this.toLowerCase()]=this}),x.support.enctype||(x.propFix.enctype="encoding"),x.each(["radio","checkbox"],function(){x.valHooks[this]={set:function(e,n){return x.isArray(n)?e.checked=x.inArray(x(e).val(),n)>=0:t}},x.support.checkOn||(x.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Z=/^(?:input|select|textarea)$/i,et=/^key/,tt=/^(?:mouse|contextmenu)|click/,nt=/^(?:focusinfocus|focusoutblur)$/,rt=/^([^.]*)(?:\.(.+)|)$/;function it(){return!0}function ot(){return!1}function at(){try{return a.activeElement}catch(e){}}x.event={global:{},add:function(e,n,r,o,a){var s,l,u,c,p,f,d,h,g,m,y,v=x._data(e);if(v){r.handler&&(c=r,r=c.handler,a=c.selector),r.guid||(r.guid=x.guid++),(l=v.events)||(l=v.events={}),(f=v.handle)||(f=v.handle=function(e){return typeof x===i||e&&x.event.triggered===e.type?t:x.event.dispatch.apply(f.elem,arguments)},f.elem=e),n=(n||"").match(T)||[""],u=n.length;while(u--)s=rt.exec(n[u])||[],g=y=s[1],m=(s[2]||"").split(".").sort(),g&&(p=x.event.special[g]||{},g=(a?p.delegateType:p.bindType)||g,p=x.event.special[g]||{},d=x.extend({type:g,origType:y,data:o,handler:r,guid:r.guid,selector:a,needsContext:a&&x.expr.match.needsContext.test(a),namespace:m.join(".")},c),(h=l[g])||(h=l[g]=[],h.delegateCount=0,p.setup&&p.setup.call(e,o,m,f)!==!1||(e.addEventListener?e.addEventListener(g,f,!1):e.attachEvent&&e.attachEvent("on"+g,f))),p.add&&(p.add.call(e,d),d.handler.guid||(d.handler.guid=r.guid)),a?h.splice(h.delegateCount++,0,d):h.push(d),x.event.global[g]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,l,u,c,p,f,d,h,g,m=x.hasData(e)&&x._data(e);if(m&&(c=m.events)){t=(t||"").match(T)||[""],u=t.length;while(u--)if(s=rt.exec(t[u])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){p=x.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,f=c[d]||[],s=s[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),l=o=f.length;while(o--)a=f[o],!i&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(f.splice(o,1),a.selector&&f.delegateCount--,p.remove&&p.remove.call(e,a));l&&!f.length&&(p.teardown&&p.teardown.call(e,h,m.handle)!==!1||x.removeEvent(e,d,m.handle),delete c[d])}else for(d in c)x.event.remove(e,d+t[u],n,r,!0);x.isEmptyObject(c)&&(delete m.handle,x._removeData(e,"events"))}},trigger:function(n,r,i,o){var s,l,u,c,p,f,d,h=[i||a],g=v.call(n,"type")?n.type:n,m=v.call(n,"namespace")?n.namespace.split("."):[];if(u=f=i=i||a,3!==i.nodeType&&8!==i.nodeType&&!nt.test(g+x.event.triggered)&&(g.indexOf(".")>=0&&(m=g.split("."),g=m.shift(),m.sort()),l=0>g.indexOf(":")&&"on"+g,n=n[x.expando]?n:new x.Event(g,"object"==typeof n&&n),n.isTrigger=o?2:3,n.namespace=m.join("."),n.namespace_re=n.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=t,n.target||(n.target=i),r=null==r?[n]:x.makeArray(r,[n]),p=x.event.special[g]||{},o||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!o&&!p.noBubble&&!x.isWindow(i)){for(c=p.delegateType||g,nt.test(c+g)||(u=u.parentNode);u;u=u.parentNode)h.push(u),f=u;f===(i.ownerDocument||a)&&h.push(f.defaultView||f.parentWindow||e)}d=0;while((u=h[d++])&&!n.isPropagationStopped())n.type=d>1?c:p.bindType||g,s=(x._data(u,"events")||{})[n.type]&&x._data(u,"handle"),s&&s.apply(u,r),s=l&&u[l],s&&x.acceptData(u)&&s.apply&&s.apply(u,r)===!1&&n.preventDefault();if(n.type=g,!o&&!n.isDefaultPrevented()&&(!p._default||p._default.apply(h.pop(),r)===!1)&&x.acceptData(i)&&l&&i[g]&&!x.isWindow(i)){f=i[l],f&&(i[l]=null),x.event.triggered=g;try{i[g]()}catch(y){}x.event.triggered=t,f&&(i[l]=f)}return n.result}},dispatch:function(e){e=x.event.fix(e);var n,r,i,o,a,s=[],l=g.call(arguments),u=(x._data(this,"events")||{})[e.type]||[],c=x.event.special[e.type]||{};if(l[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){s=x.event.handlers.call(this,e,u),n=0;while((o=s[n++])&&!e.isPropagationStopped()){e.currentTarget=o.elem,a=0;while((i=o.handlers[a++])&&!e.isImmediatePropagationStopped())(!e.namespace_re||e.namespace_re.test(i.namespace))&&(e.handleObj=i,e.data=i.data,r=((x.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,l),r!==t&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,o,a,s=[],l=n.delegateCount,u=e.target;if(l&&u.nodeType&&(!e.button||"click"!==e.type))for(;u!=this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(o=[],a=0;l>a;a++)i=n[a],r=i.selector+" ",o[r]===t&&(o[r]=i.needsContext?x(r,this).index(u)>=0:x.find(r,this,null,[u]).length),o[r]&&o.push(i);o.length&&s.push({elem:u,handlers:o})}return n.length>l&&s.push({elem:this,handlers:n.slice(l)}),s},fix:function(e){if(e[x.expando])return e;var t,n,r,i=e.type,o=e,s=this.fixHooks[i];s||(this.fixHooks[i]=s=tt.test(i)?this.mouseHooks:et.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,e=new x.Event(o),t=r.length;while(t--)n=r[t],e[n]=o[n];return e.target||(e.target=o.srcElement||a),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,s.filter?s.filter(e,o):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,o,s=n.button,l=n.fromElement;return null==e.pageX&&null!=n.clientX&&(i=e.target.ownerDocument||a,o=i.documentElement,r=i.body,e.pageX=n.clientX+(o&&o.scrollLeft||r&&r.scrollLeft||0)-(o&&o.clientLeft||r&&r.clientLeft||0),e.pageY=n.clientY+(o&&o.scrollTop||r&&r.scrollTop||0)-(o&&o.clientTop||r&&r.clientTop||0)),!e.relatedTarget&&l&&(e.relatedTarget=l===e.target?n.toElement:l),e.which||s===t||(e.which=1&s?1:2&s?3:4&s?2:0),e}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==at()&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){return this===at()&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},click:{trigger:function(){return x.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):t},_default:function(e){return x.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=x.extend(new x.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?x.event.trigger(i,null,t):x.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},x.removeEvent=a.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)}:function(e,t,n){var r="on"+t;e.detachEvent&&(typeof e[r]===i&&(e[r]=null),e.detachEvent(r,n))},x.Event=function(e,n){return this instanceof x.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.getPreventDefault()?it:ot):this.type=e,n&&x.extend(this,n),this.timeStamp=e&&e.timeStamp||x.now(),this[x.expando]=!0,t):new x.Event(e,n)},x.Event.prototype={isDefaultPrevented:ot,isPropagationStopped:ot,isImmediatePropagationStopped:ot,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=it,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=it,e&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=it,this.stopPropagation()}},x.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){x.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return(!i||i!==r&&!x.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),x.support.submitBubbles||(x.event.special.submit={setup:function(){return x.nodeName(this,"form")?!1:(x.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=x.nodeName(n,"input")||x.nodeName(n,"button")?n.form:t;r&&!x._data(r,"submitBubbles")&&(x.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),x._data(r,"submitBubbles",!0))}),t)},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&x.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return x.nodeName(this,"form")?!1:(x.event.remove(this,"._submit"),t)}}),x.support.changeBubbles||(x.event.special.change={setup:function(){return Z.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(x.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),x.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),x.event.simulate("change",this,e,!0)})),!1):(x.event.add(this,"beforeactivate._change",function(e){var t=e.target;Z.test(t.nodeName)&&!x._data(t,"changeBubbles")&&(x.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||x.event.simulate("change",this.parentNode,e,!0)}),x._data(t,"changeBubbles",!0))}),t)},handle:function(e){var n=e.target;return this!==n||e.isSimulated||e.isTrigger||"radio"!==n.type&&"checkbox"!==n.type?e.handleObj.handler.apply(this,arguments):t},teardown:function(){return x.event.remove(this,"._change"),!Z.test(this.nodeName)}}),x.support.focusinBubbles||x.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){x.event.simulate(t,e.target,x.event.fix(e),!0)};x.event.special[t]={setup:function(){0===n++&&a.addEventListener(e,r,!0)},teardown:function(){0===--n&&a.removeEventListener(e,r,!0)}}}),x.fn.extend({on:function(e,n,r,i,o){var a,s;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(a in e)this.on(a,n,r,e[a],o);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=ot;else if(!i)return this;return 1===o&&(s=i,i=function(e){return x().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=x.guid++)),this.each(function(){x.event.add(this,e,i,r,n)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,o;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,x(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(o in e)this.off(o,n,e[o]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=ot),this.each(function(){x.event.remove(this,e,r,n)})},trigger:function(e,t){return this.each(function(){x.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?x.event.trigger(e,n,r,!0):t}});var st=/^.[^:#\[\.,]*$/,lt=/^(?:parents|prev(?:Until|All))/,ut=x.expr.match.needsContext,ct={children:!0,contents:!0,next:!0,prev:!0};x.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(x(e).filter(function(){for(t=0;i>t;t++)if(x.contains(r[t],this))return!0}));for(t=0;i>t;t++)x.find(e,r[t],n);return n=this.pushStack(i>1?x.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},has:function(e){var t,n=x(e,this),r=n.length;return this.filter(function(){for(t=0;r>t;t++)if(x.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(ft(this,e||[],!0))},filter:function(e){return this.pushStack(ft(this,e||[],!1))},is:function(e){return!!ft(this,"string"==typeof e&&ut.test(e)?x(e):e||[],!1).length},closest:function(e,t){var n,r=0,i=this.length,o=[],a=ut.test(e)||"string"!=typeof e?x(e,t||this.context):0;for(;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(11>n.nodeType&&(a?a.index(n)>-1:1===n.nodeType&&x.find.matchesSelector(n,e))){n=o.push(n);break}return this.pushStack(o.length>1?x.unique(o):o)},index:function(e){return e?"string"==typeof e?x.inArray(this[0],x(e)):x.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof e?x(e,t):x.makeArray(e&&e.nodeType?[e]:e),r=x.merge(this.get(),n);return this.pushStack(x.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function pt(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}x.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return x.dir(e,"parentNode")},parentsUntil:function(e,t,n){return x.dir(e,"parentNode",n)},next:function(e){return pt(e,"nextSibling")},prev:function(e){return pt(e,"previousSibling")},nextAll:function(e){return x.dir(e,"nextSibling")},prevAll:function(e){return x.dir(e,"previousSibling")},nextUntil:function(e,t,n){return x.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return x.dir(e,"previousSibling",n)},siblings:function(e){return x.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return x.sibling(e.firstChild)},contents:function(e){return x.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:x.merge([],e.childNodes)}},function(e,t){x.fn[e]=function(n,r){var i=x.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=x.filter(r,i)),this.length>1&&(ct[e]||(i=x.unique(i)),lt.test(e)&&(i=i.reverse())),this.pushStack(i)}}),x.extend({filter:function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?x.find.matchesSelector(r,e)?[r]:[]:x.find.matches(e,x.grep(t,function(e){return 1===e.nodeType}))},dir:function(e,n,r){var i=[],o=e[n];while(o&&9!==o.nodeType&&(r===t||1!==o.nodeType||!x(o).is(r)))1===o.nodeType&&i.push(o),o=o[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});function ft(e,t,n){if(x.isFunction(t))return x.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return x.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(st.test(t))return x.filter(t,e,n);t=x.filter(t,e)}return x.grep(e,function(e){return x.inArray(e,t)>=0!==n})}function dt(e){var t=ht.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}var ht="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",gt=/ jQuery\d+="(?:null|\d+)"/g,mt=RegExp("<(?:"+ht+")[\\s/>]","i"),yt=/^\s+/,vt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bt=/<([\w:]+)/,xt=/<tbody/i,wt=/<|&#?\w+;/,Tt=/<(?:script|style|link)/i,Ct=/^(?:checkbox|radio)$/i,Nt=/checked\s*(?:[^=]|=\s*.checked.)/i,kt=/^$|\/(?:java|ecma)script/i,Et=/^true\/(.*)/,St=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,At={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:x.support.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},jt=dt(a),Dt=jt.appendChild(a.createElement("div"));At.optgroup=At.option,At.tbody=At.tfoot=At.colgroup=At.caption=At.thead,At.th=At.td,x.fn.extend({text:function(e){return x.access(this,function(e){return e===t?x.text(this):this.empty().append((this[0]&&this[0].ownerDocument||a).createTextNode(e))},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){var n,r=e?x.filter(e,this):this,i=0;for(;null!=(n=r[i]);i++)t||1!==n.nodeType||x.cleanData(Ft(n)),n.parentNode&&(t&&x.contains(n.ownerDocument,n)&&_t(Ft(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){var e,t=0;for(;null!=(e=this[t]);t++){1===e.nodeType&&x.cleanData(Ft(e,!1));while(e.firstChild)e.removeChild(e.firstChild);e.options&&x.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return x.clone(this,e,t)})},html:function(e){return x.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return 1===n.nodeType?n.innerHTML.replace(gt,""):t;if(!("string"!=typeof e||Tt.test(e)||!x.support.htmlSerialize&&mt.test(e)||!x.support.leadingWhitespace&&yt.test(e)||At[(bt.exec(e)||["",""])[1].toLowerCase()])){e=e.replace(vt,"<$1></$2>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(x.cleanData(Ft(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=x.map(this,function(e){return[e.nextSibling,e.parentNode]}),t=0;return this.domManip(arguments,function(n){var r=e[t++],i=e[t++];i&&(r&&r.parentNode!==i&&(r=this.nextSibling),x(this).remove(),i.insertBefore(n,r))},!0),t?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t,n){e=d.apply([],e);var r,i,o,a,s,l,u=0,c=this.length,p=this,f=c-1,h=e[0],g=x.isFunction(h);if(g||!(1>=c||"string"!=typeof h||x.support.checkClone)&&Nt.test(h))return this.each(function(r){var i=p.eq(r);g&&(e[0]=h.call(this,r,i.html())),i.domManip(e,t,n)});if(c&&(l=x.buildFragment(e,this[0].ownerDocument,!1,!n&&this),r=l.firstChild,1===l.childNodes.length&&(l=r),r)){for(a=x.map(Ft(l,"script"),Ht),o=a.length;c>u;u++)i=l,u!==f&&(i=x.clone(i,!0,!0),o&&x.merge(a,Ft(i,"script"))),t.call(this[u],i,u);if(o)for(s=a[a.length-1].ownerDocument,x.map(a,qt),u=0;o>u;u++)i=a[u],kt.test(i.type||"")&&!x._data(i,"globalEval")&&x.contains(s,i)&&(i.src?x._evalUrl(i.src):x.globalEval((i.text||i.textContent||i.innerHTML||"").replace(St,"")));l=r=null}return this}});function Lt(e,t){return x.nodeName(e,"table")&&x.nodeName(1===t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function Ht(e){return e.type=(null!==x.find.attr(e,"type"))+"/"+e.type,e}function qt(e){var t=Et.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function _t(e,t){var n,r=0;for(;null!=(n=e[r]);r++)x._data(n,"globalEval",!t||x._data(t[r],"globalEval"))}function Mt(e,t){if(1===t.nodeType&&x.hasData(e)){var n,r,i,o=x._data(e),a=x._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;i>r;r++)x.event.add(t,n,s[n][r])}a.data&&(a.data=x.extend({},a.data))}}function Ot(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!x.support.noCloneEvent&&t[x.expando]){i=x._data(t);for(r in i.events)x.removeEvent(t,r,i.handle);t.removeAttribute(x.expando)}"script"===n&&t.text!==e.text?(Ht(t).text=e.text,qt(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),x.support.html5Clone&&e.innerHTML&&!x.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Ct.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}}x.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){x.fn[e]=function(e){var n,r=0,i=[],o=x(e),a=o.length-1;for(;a>=r;r++)n=r===a?this:this.clone(!0),x(o[r])[t](n),h.apply(i,n.get());return this.pushStack(i)}});function Ft(e,n){var r,o,a=0,s=typeof e.getElementsByTagName!==i?e.getElementsByTagName(n||"*"):typeof e.querySelectorAll!==i?e.querySelectorAll(n||"*"):t;if(!s)for(s=[],r=e.childNodes||e;null!=(o=r[a]);a++)!n||x.nodeName(o,n)?s.push(o):x.merge(s,Ft(o,n));return n===t||n&&x.nodeName(e,n)?x.merge([e],s):s}function Bt(e){Ct.test(e.type)&&(e.defaultChecked=e.checked)}x.extend({clone:function(e,t,n){var r,i,o,a,s,l=x.contains(e.ownerDocument,e);if(x.support.html5Clone||x.isXMLDoc(e)||!mt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(Dt.innerHTML=e.outerHTML,Dt.removeChild(o=Dt.firstChild)),!(x.support.noCloneEvent&&x.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||x.isXMLDoc(e)))for(r=Ft(o),s=Ft(e),a=0;null!=(i=s[a]);++a)r[a]&&Ot(i,r[a]);if(t)if(n)for(s=s||Ft(e),r=r||Ft(o),a=0;null!=(i=s[a]);a++)Mt(i,r[a]);else Mt(e,o);return r=Ft(o,"script"),r.length>0&&_t(r,!l&&Ft(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){var i,o,a,s,l,u,c,p=e.length,f=dt(t),d=[],h=0;for(;p>h;h++)if(o=e[h],o||0===o)if("object"===x.type(o))x.merge(d,o.nodeType?[o]:o);else if(wt.test(o)){s=s||f.appendChild(t.createElement("div")),l=(bt.exec(o)||["",""])[1].toLowerCase(),c=At[l]||At._default,s.innerHTML=c[1]+o.replace(vt,"<$1></$2>")+c[2],i=c[0];while(i--)s=s.lastChild;if(!x.support.leadingWhitespace&&yt.test(o)&&d.push(t.createTextNode(yt.exec(o)[0])),!x.support.tbody){o="table"!==l||xt.test(o)?"<table>"!==c[1]||xt.test(o)?0:s:s.firstChild,i=o&&o.childNodes.length;while(i--)x.nodeName(u=o.childNodes[i],"tbody")&&!u.childNodes.length&&o.removeChild(u)}x.merge(d,s.childNodes),s.textContent="";while(s.firstChild)s.removeChild(s.firstChild);s=f.lastChild}else d.push(t.createTextNode(o));s&&f.removeChild(s),x.support.appendChecked||x.grep(Ft(d,"input"),Bt),h=0;while(o=d[h++])if((!r||-1===x.inArray(o,r))&&(a=x.contains(o.ownerDocument,o),s=Ft(f.appendChild(o),"script"),a&&_t(s),n)){i=0;while(o=s[i++])kt.test(o.type||"")&&n.push(o)}return s=null,f},cleanData:function(e,t){var n,r,o,a,s=0,l=x.expando,u=x.cache,c=x.support.deleteExpando,f=x.event.special;for(;null!=(n=e[s]);s++)if((t||x.acceptData(n))&&(o=n[l],a=o&&u[o])){if(a.events)for(r in a.events)f[r]?x.event.remove(n,r):x.removeEvent(n,r,a.handle);
6u[o]&&(delete u[o],c?delete n[l]:typeof n.removeAttribute!==i?n.removeAttribute(l):n[l]=null,p.push(o))}},_evalUrl:function(e){return x.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),x.fn.extend({wrapAll:function(e){if(x.isFunction(e))return this.each(function(t){x(this).wrapAll(e.call(this,t))});if(this[0]){var t=x(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&1===e.firstChild.nodeType)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return x.isFunction(e)?this.each(function(t){x(this).wrapInner(e.call(this,t))}):this.each(function(){var t=x(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=x.isFunction(e);return this.each(function(n){x(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){x.nodeName(this,"body")||x(this).replaceWith(this.childNodes)}).end()}});var Pt,Rt,Wt,$t=/alpha\([^)]*\)/i,It=/opacity\s*=\s*([^)]*)/,zt=/^(top|right|bottom|left)$/,Xt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,Vt=RegExp("^("+w+")(.*)$","i"),Yt=RegExp("^("+w+")(?!px)[a-z%]+$","i"),Jt=RegExp("^([+-])=("+w+")","i"),Gt={BODY:"block"},Qt={position:"absolute",visibility:"hidden",display:"block"},Kt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bottom","Left"],en=["Webkit","O","Moz","ms"];function tn(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=en.length;while(i--)if(t=en[i]+n,t in e)return t;return r}function nn(e,t){return e=t||e,"none"===x.css(e,"display")||!x.contains(e.ownerDocument,e)}function rn(e,t){var n,r,i,o=[],a=0,s=e.length;for(;s>a;a++)r=e[a],r.style&&(o[a]=x._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=x._data(r,"olddisplay",ln(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&x._data(r,"olddisplay",i?n:x.css(r,"display"))));for(a=0;s>a;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}x.fn.extend({css:function(e,n){return x.access(this,function(e,n,r){var i,o,a={},s=0;if(x.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=x.css(e,n[s],!1,o);return a}return r!==t?x.style(e,n,r):x.css(e,n)},e,n,arguments.length>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){nn(this)?x(this).show():x(this).hide()})}}),x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":x.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,l=x.camelCase(n),u=e.style;if(n=x.cssProps[l]||(x.cssProps[l]=tn(u,l)),s=x.cssHooks[n]||x.cssHooks[l],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:u[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(x.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||x.cssNumber[l]||(r+="px"),x.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(u[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{u[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,l=x.camelCase(n);return n=x.cssProps[l]||(x.cssProps[l]=tn(e.style,l)),s=x.cssHooks[n]||x.cssHooks[l],s&&"get"in s&&(a=s.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Kt&&(a=Kt[n]),""===r||r?(o=parseFloat(a),r===!0||x.isNumeric(o)?o||0:a):a}}),e.getComputedStyle?(Rt=function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s.getPropertyValue(n)||s[n]:t,u=e.style;return s&&(""!==l||x.contains(e.ownerDocument,e)||(l=x.style(e,n)),Yt.test(l)&&Ut.test(n)&&(i=u.width,o=u.minWidth,a=u.maxWidth,u.minWidth=u.maxWidth=u.width=l,l=s.width,u.width=i,u.minWidth=o,u.maxWidth=a)),l}):a.documentElement.currentStyle&&(Rt=function(e){return e.currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s[n]:t,u=e.style;return null==l&&u&&u[n]&&(l=u[n]),Yt.test(l)&&!zt.test(n)&&(i=u.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),u.left="fontSize"===n?"1em":l,l=u.pixelLeft+"px",u.left=i,a&&(o.left=a)),""===l?"auto":l});function on(e,t,n){var r=Vt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function an(e,t,n,r,i){var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;for(;4>o;o+=2)"margin"===n&&(a+=x.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=x.css(e,"padding"+Zt[o],!0,i)),"margin"!==n&&(a-=x.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=x.css(e,"padding"+Zt[o],!0,i),"padding"!==n&&(a+=x.css(e,"border"+Zt[o]+"Width",!0,i)));return a}function sn(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Rt(e),a=x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=Wt(e,t,o),(0>i||null==i)&&(i=e.style[t]),Yt.test(i))return i;r=a&&(x.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+an(e,t,n||(a?"border":"content"),r,o)+"px"}function ln(e){var t=a,n=Gt[e];return n||(n=un(e,t),"none"!==n&&n||(Pt=(Pt||x("<iframe frameborder='0' width='0' height='0'/>").css("cssText","display:block !important")).appendTo(t.documentElement),t=(Pt[0].contentWindow||Pt[0].contentDocument).document,t.write("<!doctype html><html><body>"),t.close(),n=un(e,t),Pt.detach()),Gt[e]=n),n}function un(e,t){var n=x(t.createElement(e)).appendTo(t.body),r=x.css(n[0],"display");return n.remove(),r}x.each(["height","width"],function(e,n){x.cssHooks[n]={get:function(e,r,i){return r?0===e.offsetWidth&&Xt.test(x.css(e,"display"))?x.swap(e,Qt,function(){return sn(e,n,i)}):sn(e,n,i):t},set:function(e,t,r){var i=r&&Rt(e);return on(e,t,r?an(e,n,r,x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,i),i):0)}}}),x.support.opacity||(x.cssHooks.opacity={get:function(e,t){return It.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=x.isNumeric(t)?"alpha(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""===x.trim(o.replace($t,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""===t||r&&!r.filter)||(n.filter=$t.test(o)?o.replace($t,i):o+" "+i)}}),x(function(){x.support.reliableMarginRight||(x.cssHooks.marginRight={get:function(e,n){return n?x.swap(e,{display:"inline-block"},Wt,[e,"marginRight"]):t}}),!x.support.pixelPosition&&x.fn.position&&x.each(["top","left"],function(e,n){x.cssHooks[n]={get:function(e,r){return r?(r=Wt(e,n),Yt.test(r)?x(e).position()[n]+"px":r):t}}})}),x.expr&&x.expr.filters&&(x.expr.filters.hidden=function(e){return 0>=e.offsetWidth&&0>=e.offsetHeight||!x.support.reliableHiddenOffsets&&"none"===(e.style&&e.style.display||x.css(e,"display"))},x.expr.filters.visible=function(e){return!x.expr.filters.hidden(e)}),x.each({margin:"",padding:"",border:"Width"},function(e,t){x.cssHooks[e+t]={expand:function(n){var r=0,i={},o="string"==typeof n?n.split(" "):[n];for(;4>r;r++)i[e+Zt[r]+t]=o[r]||o[r-2]||o[0];return i}},Ut.test(e)||(x.cssHooks[e+t].set=on)});var cn=/%20/g,pn=/\[\]$/,fn=/\r?\n/g,dn=/^(?:submit|button|image|reset|file)$/i,hn=/^(?:input|select|textarea|keygen)/i;x.fn.extend({serialize:function(){return x.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=x.prop(this,"elements");return e?x.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!x(this).is(":disabled")&&hn.test(this.nodeName)&&!dn.test(e)&&(this.checked||!Ct.test(e))}).map(function(e,t){var n=x(this).val();return null==n?null:x.isArray(n)?x.map(n,function(e){return{name:t.name,value:e.replace(fn,"\r\n")}}):{name:t.name,value:n.replace(fn,"\r\n")}}).get()}}),x.param=function(e,n){var r,i=[],o=function(e,t){t=x.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(n===t&&(n=x.ajaxSettings&&x.ajaxSettings.traditional),x.isArray(e)||e.jquery&&!x.isPlainObject(e))x.each(e,function(){o(this.name,this.value)});else for(r in e)gn(r,e[r],n,o);return i.join("&").replace(cn,"+")};function gn(e,t,n,r){var i;if(x.isArray(t))x.each(t,function(t,i){n||pn.test(e)?r(e,i):gn(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==x.type(t))r(e,t);else for(i in t)gn(e+"["+i+"]",t[i],n,r)}x.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 contextmenu".split(" "),function(e,t){x.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),x.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}});var mn,yn,vn=x.now(),bn=/\?/,xn=/#.*$/,wn=/([?&])_=[^&]*/,Tn=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Cn=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Nn=/^(?:GET|HEAD)$/,kn=/^\/\//,En=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Sn=x.fn.load,An={},jn={},Dn="*/".concat("*");try{yn=o.href}catch(Ln){yn=a.createElement("a"),yn.href="",yn=yn.href}mn=En.exec(yn.toLowerCase())||[];function Hn(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(T)||[];if(x.isFunction(n))while(r=o[i++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function qn(e,n,r,i){var o={},a=e===jn;function s(l){var u;return o[l]=!0,x.each(e[l]||[],function(e,l){var c=l(n,r,i);return"string"!=typeof c||a||o[c]?a?!(u=c):t:(n.dataTypes.unshift(c),s(c),!1)}),u}return s(n.dataTypes[0])||!o["*"]&&s("*")}function _n(e,n){var r,i,o=x.ajaxSettings.flatOptions||{};for(i in n)n[i]!==t&&((o[i]?e:r||(r={}))[i]=n[i]);return r&&x.extend(!0,e,r),e}x.fn.load=function(e,n,r){if("string"!=typeof e&&Sn)return Sn.apply(this,arguments);var i,o,a,s=this,l=e.indexOf(" ");return l>=0&&(i=e.slice(l,e.length),e=e.slice(0,l)),x.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(a="POST"),s.length>0&&x.ajax({url:e,type:a,dataType:"html",data:n}).done(function(e){o=arguments,s.html(i?x("<div>").append(x.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){s.each(r,o||[e.responseText,t,e])}),this},x.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){x.fn[t]=function(e){return this.on(t,e)}}),x.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:yn,type:"GET",isLocal:Cn.test(mn[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Dn,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":x.parseJSON,"text xml":x.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?_n(_n(e,x.ajaxSettings),t):_n(x.ajaxSettings,e)},ajaxPrefilter:Hn(An),ajaxTransport:Hn(jn),ajax:function(e,n){"object"==typeof e&&(n=e,e=t),n=n||{};var r,i,o,a,s,l,u,c,p=x.ajaxSetup({},n),f=p.context||p,d=p.context&&(f.nodeType||f.jquery)?x(f):x.event,h=x.Deferred(),g=x.Callbacks("once memory"),m=p.statusCode||{},y={},v={},b=0,w="canceled",C={readyState:0,getResponseHeader:function(e){var t;if(2===b){if(!c){c={};while(t=Tn.exec(a))c[t[1].toLowerCase()]=t[2]}t=c[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===b?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return b||(e=v[n]=v[n]||e,y[e]=t),this},overrideMimeType:function(e){return b||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>b)for(t in e)m[t]=[m[t],e[t]];else C.always(e[C.status]);return this},abort:function(e){var t=e||w;return u&&u.abort(t),k(0,t),this}};if(h.promise(C).complete=g.add,C.success=C.done,C.error=C.fail,p.url=((e||p.url||yn)+"").replace(xn,"").replace(kn,mn[1]+"//"),p.type=n.method||n.type||p.method||p.type,p.dataTypes=x.trim(p.dataType||"*").toLowerCase().match(T)||[""],null==p.crossDomain&&(r=En.exec(p.url.toLowerCase()),p.crossDomain=!(!r||r[1]===mn[1]&&r[2]===mn[2]&&(r[3]||("http:"===r[1]?"80":"443"))===(mn[3]||("http:"===mn[1]?"80":"443")))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=x.param(p.data,p.traditional)),qn(An,p,n,C),2===b)return C;l=p.global,l&&0===x.active++&&x.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!Nn.test(p.type),o=p.url,p.hasContent||(p.data&&(o=p.url+=(bn.test(o)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=wn.test(o)?o.replace(wn,"$1_="+vn++):o+(bn.test(o)?"&":"?")+"_="+vn++)),p.ifModified&&(x.lastModified[o]&&C.setRequestHeader("If-Modified-Since",x.lastModified[o]),x.etag[o]&&C.setRequestHeader("If-None-Match",x.etag[o])),(p.data&&p.hasContent&&p.contentType!==!1||n.contentType)&&C.setRequestHeader("Content-Type",p.contentType),C.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+Dn+"; q=0.01":""):p.accepts["*"]);for(i in p.headers)C.setRequestHeader(i,p.headers[i]);if(p.beforeSend&&(p.beforeSend.call(f,C,p)===!1||2===b))return C.abort();w="abort";for(i in{success:1,error:1,complete:1})C[i](p[i]);if(u=qn(jn,p,n,C)){C.readyState=1,l&&d.trigger("ajaxSend",[C,p]),p.async&&p.timeout>0&&(s=setTimeout(function(){C.abort("timeout")},p.timeout));try{b=1,u.send(y,k)}catch(N){if(!(2>b))throw N;k(-1,N)}}else k(-1,"No Transport");function k(e,n,r,i){var c,y,v,w,T,N=n;2!==b&&(b=2,s&&clearTimeout(s),u=t,a=i||"",C.readyState=e>0?4:0,c=e>=200&&300>e||304===e,r&&(w=Mn(p,C,r)),w=On(p,w,C,c),c?(p.ifModified&&(T=C.getResponseHeader("Last-Modified"),T&&(x.lastModified[o]=T),T=C.getResponseHeader("etag"),T&&(x.etag[o]=T)),204===e||"HEAD"===p.type?N="nocontent":304===e?N="notmodified":(N=w.state,y=w.data,v=w.error,c=!v)):(v=N,(e||!N)&&(N="error",0>e&&(e=0))),C.status=e,C.statusText=(n||N)+"",c?h.resolveWith(f,[y,N,C]):h.rejectWith(f,[C,N,v]),C.statusCode(m),m=t,l&&d.trigger(c?"ajaxSuccess":"ajaxError",[C,p,c?y:v]),g.fireWith(f,[C,N]),l&&(d.trigger("ajaxComplete",[C,p]),--x.active||x.event.trigger("ajaxStop")))}return C},getJSON:function(e,t,n){return x.get(e,t,n,"json")},getScript:function(e,n){return x.get(e,t,n,"script")}}),x.each(["get","post"],function(e,n){x[n]=function(e,r,i,o){return x.isFunction(r)&&(o=o||i,i=r,r=t),x.ajax({url:e,type:n,dataType:o,data:r,success:i})}});function Mn(e,n,r){var i,o,a,s,l=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),o===t&&(o=e.mimeType||n.getResponseHeader("Content-Type"));if(o)for(s in l)if(l[s]&&l[s].test(o)){u.unshift(s);break}if(u[0]in r)a=u[0];else{for(s in r){if(!u[0]||e.converters[s+" "+u[0]]){a=s;break}i||(i=s)}a=a||i}return a?(a!==u[0]&&u.unshift(a),r[a]):t}function On(e,t,n,r){var i,o,a,s,l,u={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)u[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=o,o=c.shift())if("*"===o)o=l;else if("*"!==l&&l!==o){if(a=u[l+" "+o]||u["* "+o],!a)for(i in u)if(s=i.split(" "),s[1]===o&&(a=u[l+" "+s[0]]||u["* "+s[0]])){a===!0?a=u[i]:u[i]!==!0&&(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(p){return{state:"parsererror",error:a?p:"No conversion from "+l+" to "+o}}}return{state:"success",data:t}}x.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return x.globalEval(e),e}}}),x.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),x.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=a.head||x("head")[0]||a.documentElement;return{send:function(t,i){n=a.createElement("script"),n.async=!0,e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,t){(t||!n.readyState||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystatechange=null,n.parentNode&&n.parentNode.removeChild(n),n=null,t||i(200,"success"))},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(t,!0)}}}});var Fn=[],Bn=/(=)\?(?=&|$)|\?\?/;x.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Fn.pop()||x.expando+"_"+vn++;return this[e]=!0,e}}),x.ajaxPrefilter("json jsonp",function(n,r,i){var o,a,s,l=n.jsonp!==!1&&(Bn.test(n.url)?"url":"string"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Bn.test(n.data)&&"data");return l||"jsonp"===n.dataTypes[0]?(o=n.jsonpCallback=x.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,l?n[l]=n[l].replace(Bn,"$1"+o):n.jsonp!==!1&&(n.url+=(bn.test(n.url)?"&":"?")+n.jsonp+"="+o),n.converters["script json"]=function(){return s||x.error(o+" was not called"),s[0]},n.dataTypes[0]="json",a=e[o],e[o]=function(){s=arguments},i.always(function(){e[o]=a,n[o]&&(n.jsonpCallback=r.jsonpCallback,Fn.push(o)),s&&x.isFunction(a)&&a(s[0]),s=a=t}),"script"):t});var Pn,Rn,Wn=0,$n=e.ActiveXObject&&function(){var e;for(e in Pn)Pn[e](t,!0)};function In(){try{return new e.XMLHttpRequest}catch(t){}}function zn(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}x.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&In()||zn()}:In,Rn=x.ajaxSettings.xhr(),x.support.cors=!!Rn&&"withCredentials"in Rn,Rn=x.support.ajax=!!Rn,Rn&&x.ajaxTransport(function(n){if(!n.crossDomain||x.support.cors){var r;return{send:function(i,o){var a,s,l=n.xhr();if(n.username?l.open(n.type,n.url,n.async,n.username,n.password):l.open(n.type,n.url,n.async),n.xhrFields)for(s in n.xhrFields)l[s]=n.xhrFields[s];n.mimeType&&l.overrideMimeType&&l.overrideMimeType(n.mimeType),n.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");try{for(s in i)l.setRequestHeader(s,i[s])}catch(u){}l.send(n.hasContent&&n.data||null),r=function(e,i){var s,u,c,p;try{if(r&&(i||4===l.readyState))if(r=t,a&&(l.onreadystatechange=x.noop,$n&&delete Pn[a]),i)4!==l.readyState&&l.abort();else{p={},s=l.status,u=l.getAllResponseHeaders(),"string"==typeof l.responseText&&(p.text=l.responseText);try{c=l.statusText}catch(f){c=""}s||!n.isLocal||n.crossDomain?1223===s&&(s=204):s=p.text?200:404}}catch(d){i||o(-1,d)}p&&o(s,c,p,u)},n.async?4===l.readyState?setTimeout(r):(a=++Wn,$n&&(Pn||(Pn={},x(e).unload($n)),Pn[a]=r),l.onreadystatechange=r):r()},abort:function(){r&&r(t,!0)}}}});var Xn,Un,Vn=/^(?:toggle|show|hide)$/,Yn=RegExp("^(?:([+-])=|)("+w+")([a-z%]*)$","i"),Jn=/queueHooks$/,Gn=[nr],Qn={"*":[function(e,t){var n=this.createTween(e,t),r=n.cur(),i=Yn.exec(t),o=i&&i[3]||(x.cssNumber[e]?"":"px"),a=(x.cssNumber[e]||"px"!==o&&+r)&&Yn.exec(x.css(n.elem,e)),s=1,l=20;if(a&&a[3]!==o){o=o||a[3],i=i||[],a=+r||1;do s=s||".5",a/=s,x.style(n.elem,e,a+o);while(s!==(s=n.cur()/r)&&1!==s&&--l)}return i&&(a=n.start=+a||+r||0,n.unit=o,n.end=i[1]?a+(i[1]+1)*i[2]:+i[2]),n}]};function Kn(){return setTimeout(function(){Xn=t}),Xn=x.now()}function Zn(e,t,n){var r,i=(Qn[t]||[]).concat(Qn["*"]),o=0,a=i.length;for(;a>o;o++)if(r=i[o].call(n,t,e))return r}function er(e,t,n){var r,i,o=0,a=Gn.length,s=x.Deferred().always(function(){delete l.elem}),l=function(){if(i)return!1;var t=Xn||Kn(),n=Math.max(0,u.startTime+u.duration-t),r=n/u.duration||0,o=1-r,a=0,l=u.tweens.length;for(;l>a;a++)u.tweens[a].run(o);return s.notifyWith(e,[u,o,n]),1>o&&l?n:(s.resolveWith(e,[u]),!1)},u=s.promise({elem:e,props:x.extend({},t),opts:x.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Xn||Kn(),duration:n.duration,tweens:[],createTween:function(t,n){var r=x.Tween(e,u.opts,t,n,u.opts.specialEasing[t]||u.opts.easing);return u.tweens.push(r),r},stop:function(t){var n=0,r=t?u.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)u.tweens[n].run(1);return t?s.resolveWith(e,[u,t]):s.rejectWith(e,[u,t]),this}}),c=u.props;for(tr(c,u.opts.specialEasing);a>o;o++)if(r=Gn[o].call(u,e,c,u.opts))return r;return x.map(c,Zn,u),x.isFunction(u.opts.start)&&u.opts.start.call(e,u),x.fx.timer(x.extend(l,{elem:e,anim:u,queue:u.opts.queue})),u.progress(u.opts.progress).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always)}function tr(e,t){var n,r,i,o,a;for(n in e)if(r=x.camelCase(n),i=t[r],o=e[n],x.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),a=x.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}x.Animation=x.extend(er,{tweener:function(e,t){x.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;i>r;r++)n=e[r],Qn[n]=Qn[n]||[],Qn[n].unshift(t)},prefilter:function(e,t){t?Gn.unshift(e):Gn.push(e)}});function nr(e,t,n){var r,i,o,a,s,l,u=this,c={},p=e.style,f=e.nodeType&&nn(e),d=x._data(e,"fxshow");n.queue||(s=x._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,l=s.empty.fire,s.empty.fire=function(){s.unqueued||l()}),s.unqueued++,u.always(function(){u.always(function(){s.unqueued--,x.queue(e,"fx").length||s.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[p.overflow,p.overflowX,p.overflowY],"inline"===x.css(e,"display")&&"none"===x.css(e,"float")&&(x.support.inlineBlockNeedsLayout&&"inline"!==ln(e.nodeName)?p.zoom=1:p.display="inline-block")),n.overflow&&(p.overflow="hidden",x.support.shrinkWrapBlocks||u.always(function(){p.overflow=n.overflow[0],p.overflowX=n.overflow[1],p.overflowY=n.overflow[2]}));for(r in t)if(i=t[r],Vn.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(f?"hide":"show"))continue;c[r]=d&&d[r]||x.style(e,r)}if(!x.isEmptyObject(c)){d?"hidden"in d&&(f=d.hidden):d=x._data(e,"fxshow",{}),o&&(d.hidden=!f),f?x(e).show():u.done(function(){x(e).hide()}),u.done(function(){var t;x._removeData(e,"fxshow");for(t in c)x.style(e,t,c[t])});for(r in c)a=Zn(f?d[r]:0,r,u),r in d||(d[r]=a.start,f&&(a.end=a.start,a.start="width"===r||"height"===r?1:0))}}function rr(e,t,n,r,i){return new rr.prototype.init(e,t,n,r,i)}x.Tween=rr,rr.prototype={constructor:rr,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(x.cssNumber[n]?"":"px")},cur:function(){var e=rr.propHooks[this.prop];return e&&e.get?e.get(this):rr.propHooks._default.get(this)},run:function(e){var t,n=rr.propHooks[this.prop];return this.pos=t=this.options.duration?x.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):rr.propHooks._default.set(this),this}},rr.prototype.init.prototype=rr.prototype,rr.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=x.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){x.fx.step[e.prop]?x.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[x.cssProps[e.prop]]||x.cssHooks[e.prop])?x.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},rr.propHooks.scrollTop=rr.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},x.each(["toggle","show","hide"],function(e,t){var n=x.fn[t];x.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(ir(t,!0),e,r,i)}}),x.fn.extend({fadeTo:function(e,t,n,r){return this.filter(nn).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=x.isEmptyObject(e),o=x.speed(t,n,r),a=function(){var t=er(this,x.extend({},e),o);(i||x._data(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:function(e,n,r){var i=function(e){var t=e.stop;delete e.stop,t(r)};return"string"!=typeof e&&(r=n,n=e,e=t),n&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,n=null!=e&&e+"queueHooks",o=x.timers,a=x._data(this);if(n)a[n]&&a[n].stop&&i(a[n]);else for(n in a)a[n]&&a[n].stop&&Jn.test(n)&&i(a[n]);for(n=o.length;n--;)o[n].elem!==this||null!=e&&o[n].queue!==e||(o[n].anim.stop(r),t=!1,o.splice(n,1));(t||!r)&&x.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=x._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=x.timers,a=r?r.length:0;for(n.finish=!0,x.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}});function ir(e,t){var n,r={height:e},i=0;for(t=t?1:0;4>i;i+=2-t)n=Zt[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}x.each({slideDown:ir("show"),slideUp:ir("hide"),slideToggle:ir("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){x.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),x.speed=function(e,t,n){var r=e&&"object"==typeof e?x.extend({},e):{complete:n||!n&&t||x.isFunction(e)&&e,duration:e,easing:n&&t||t&&!x.isFunction(t)&&t};return r.duration=x.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in x.fx.speeds?x.fx.speeds[r.duration]:x.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){x.isFunction(r.old)&&r.old.call(this),r.queue&&x.dequeue(this,r.queue)},r},x.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},x.timers=[],x.fx=rr.prototype.init,x.fx.tick=function(){var e,n=x.timers,r=0;for(Xn=x.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||x.fx.stop(),Xn=t},x.fx.timer=function(e){e()&&x.timers.push(e)&&x.fx.start()},x.fx.interval=13,x.fx.start=function(){Un||(Un=setInterval(x.fx.tick,x.fx.interval))},x.fx.stop=function(){clearInterval(Un),Un=null},x.fx.speeds={slow:600,fast:200,_default:400},x.fx.step={},x.expr&&x.expr.filters&&(x.expr.filters.animated=function(e){return x.grep(x.timers,function(t){return e===t.elem}).length}),x.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){x.offset.setOffset(this,e,t)});var n,r,o={top:0,left:0},a=this[0],s=a&&a.ownerDocument;if(s)return n=s.documentElement,x.contains(n,a)?(typeof a.getBoundingClientRect!==i&&(o=a.getBoundingClientRect()),r=or(s),{top:o.top+(r.pageYOffset||n.scrollTop)-(n.clientTop||0),left:o.left+(r.pageXOffset||n.scrollLeft)-(n.clientLeft||0)}):o},x.offset={setOffset:function(e,t,n){var r=x.css(e,"position");"static"===r&&(e.style.position="relative");var i=x(e),o=i.offset(),a=x.css(e,"top"),s=x.css(e,"left"),l=("absolute"===r||"fixed"===r)&&x.inArray("auto",[a,s])>-1,u={},c={},p,f;l?(c=i.position(),p=c.top,f=c.left):(p=parseFloat(a)||0,f=parseFloat(s)||0),x.isFunction(t)&&(t=t.call(e,n,o)),null!=t.top&&(u.top=t.top-o.top+p),null!=t.left&&(u.left=t.left-o.left+f),"using"in t?t.using.call(e,u):i.css(u)}},x.fn.extend({position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===x.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),x.nodeName(e[0],"html")||(n=e.offset()),n.top+=x.css(e[0],"borderTopWidth",!0),n.left+=x.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-x.css(r,"marginTop",!0),left:t.left-n.left-x.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||s;while(e&&!x.nodeName(e,"html")&&"static"===x.css(e,"position"))e=e.offsetParent;return e||s})}}),x.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);x.fn[e]=function(i){return x.access(this,function(e,i,o){var a=or(e);return o===t?a?n in a?a[n]:a.document.documentElement[i]:e[i]:(a?a.scrollTo(r?x(a).scrollLeft():o,r?o:x(a).scrollTop()):e[i]=o,t)},e,i,arguments.length,null)}});function or(e){return x.isWindow(e)?e:9===e.nodeType?e.defaultView||e.parentWindow:!1}x.each({Height:"height",Width:"width"},function(e,n){x.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){x.fn[i]=function(i,o){var a=arguments.length&&(r||"boolean"!=typeof i),s=r||(i===!0||o===!0?"margin":"border");return x.access(this,function(n,r,i){var o;return x.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(o=n.documentElement,Math.max(n.body["scroll"+e],o["scroll"+e],n.body["offset"+e],o["offset"+e],o["client"+e])):i===t?x.css(n,r,s):x.style(n,r,i,s)},n,a?i:t,a,null)}})}),x.fn.size=function(){return this.length},x.fn.andSelf=x.fn.addBack,"object"==typeof module&&module&&"object"==typeof module.exports?module.exports=x:(e.jQuery=e.$=x,"function"==typeof define&&define.amd&&define("jquery",[],function(){return x}))})(window);
  
1// Underscore.js 1.5.2
2// http://underscorejs.org
3// (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
4// Underscore may be freely distributed under the MIT license.
5(function(){var n=this,t=n._,r={},e=Array.prototype,u=Object.prototype,i=Function.prototype,a=e.push,o=e.slice,c=e.concat,l=u.toString,f=u.hasOwnProperty,s=e.forEach,p=e.map,h=e.reduce,v=e.reduceRight,g=e.filter,d=e.every,m=e.some,y=e.indexOf,b=e.lastIndexOf,x=Array.isArray,w=Object.keys,_=i.bind,j=function(n){return n instanceof j?n:this instanceof j?(this._wrapped=n,void 0):new j(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=j),exports._=j):n._=j,j.VERSION="1.5.2";var A=j.each=j.forEach=function(n,t,e){if(null!=n)if(s&&n.forEach===s)n.forEach(t,e);else if(n.length===+n.length){for(var u=0,i=n.length;i>u;u++)if(t.call(e,n[u],u,n)===r)return}else for(var a=j.keys(n),u=0,i=a.length;i>u;u++)if(t.call(e,n[a[u]],a[u],n)===r)return};j.map=j.collect=function(n,t,r){var e=[];return null==n?e:p&&n.map===p?n.map(t,r):(A(n,function(n,u,i){e.push(t.call(r,n,u,i))}),e)};var E="Reduce of empty array with no initial value";j.reduce=j.foldl=j.inject=function(n,t,r,e){var u=arguments.length>2;if(null==n&&(n=[]),h&&n.reduce===h)return e&&(t=j.bind(t,e)),u?n.reduce(t,r):n.reduce(t);if(A(n,function(n,i,a){u?r=t.call(e,r,n,i,a):(r=n,u=!0)}),!u)throw new TypeError(E);return r},j.reduceRight=j.foldr=function(n,t,r,e){var u=arguments.length>2;if(null==n&&(n=[]),v&&n.reduceRight===v)return e&&(t=j.bind(t,e)),u?n.reduceRight(t,r):n.reduceRight(t);var i=n.length;if(i!==+i){var a=j.keys(n);i=a.length}if(A(n,function(o,c,l){c=a?a[--i]:--i,u?r=t.call(e,r,n[c],c,l):(r=n[c],u=!0)}),!u)throw new TypeError(E);return r},j.find=j.detect=function(n,t,r){var e;return O(n,function(n,u,i){return t.call(r,n,u,i)?(e=n,!0):void 0}),e},j.filter=j.select=function(n,t,r){var e=[];return null==n?e:g&&n.filter===g?n.filter(t,r):(A(n,function(n,u,i){t.call(r,n,u,i)&&e.push(n)}),e)},j.reject=function(n,t,r){return j.filter(n,function(n,e,u){return!t.call(r,n,e,u)},r)},j.every=j.all=function(n,t,e){t||(t=j.identity);var u=!0;return null==n?u:d&&n.every===d?n.every(t,e):(A(n,function(n,i,a){return(u=u&&t.call(e,n,i,a))?void 0:r}),!!u)};var O=j.some=j.any=function(n,t,e){t||(t=j.identity);var u=!1;return null==n?u:m&&n.some===m?n.some(t,e):(A(n,function(n,i,a){return u||(u=t.call(e,n,i,a))?r:void 0}),!!u)};j.contains=j.include=function(n,t){return null==n?!1:y&&n.indexOf===y?n.indexOf(t)!=-1:O(n,function(n){return n===t})},j.invoke=function(n,t){var r=o.call(arguments,2),e=j.isFunction(t);return j.map(n,function(n){return(e?t:n[t]).apply(n,r)})},j.pluck=function(n,t){return j.map(n,function(n){return n[t]})},j.where=function(n,t,r){return j.isEmpty(t)?r?void 0:[]:j[r?"find":"filter"](n,function(n){for(var r in t)if(t[r]!==n[r])return!1;return!0})},j.findWhere=function(n,t){return j.where(n,t,!0)},j.max=function(n,t,r){if(!t&&j.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.max.apply(Math,n);if(!t&&j.isEmpty(n))return-1/0;var e={computed:-1/0,value:-1/0};return A(n,function(n,u,i){var a=t?t.call(r,n,u,i):n;a>e.computed&&(e={value:n,computed:a})}),e.value},j.min=function(n,t,r){if(!t&&j.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.min.apply(Math,n);if(!t&&j.isEmpty(n))return 1/0;var e={computed:1/0,value:1/0};return A(n,function(n,u,i){var a=t?t.call(r,n,u,i):n;a<e.computed&&(e={value:n,computed:a})}),e.value},j.shuffle=function(n){var t,r=0,e=[];return A(n,function(n){t=j.random(r++),e[r-1]=e[t],e[t]=n}),e},j.sample=function(n,t,r){return arguments.length<2||r?n[j.random(n.length-1)]:j.shuffle(n).slice(0,Math.max(0,t))};var k=function(n){return j.isFunction(n)?n:function(t){return t[n]}};j.sortBy=function(n,t,r){var e=k(t);return j.pluck(j.map(n,function(n,t,u){return{value:n,index:t,criteria:e.call(r,n,t,u)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var F=function(n){return function(t,r,e){var u={},i=null==r?j.identity:k(r);return A(t,function(r,a){var o=i.call(e,r,a,t);n(u,o,r)}),u}};j.groupBy=F(function(n,t,r){(j.has(n,t)?n[t]:n[t]=[]).push(r)}),j.indexBy=F(function(n,t,r){n[t]=r}),j.countBy=F(function(n,t){j.has(n,t)?n[t]++:n[t]=1}),j.sortedIndex=function(n,t,r,e){r=null==r?j.identity:k(r);for(var u=r.call(e,t),i=0,a=n.length;a>i;){var o=i+a>>>1;r.call(e,n[o])<u?i=o+1:a=o}return i},j.toArray=function(n){return n?j.isArray(n)?o.call(n):n.length===+n.length?j.map(n,j.identity):j.values(n):[]},j.size=function(n){return null==n?0:n.length===+n.length?n.length:j.keys(n).length},j.first=j.head=j.take=function(n,t,r){return null==n?void 0:null==t||r?n[0]:o.call(n,0,t)},j.initial=function(n,t,r){return o.call(n,0,n.length-(null==t||r?1:t))},j.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:o.call(n,Math.max(n.length-t,0))},j.rest=j.tail=j.drop=function(n,t,r){return o.call(n,null==t||r?1:t)},j.compact=function(n){return j.filter(n,j.identity)};var M=function(n,t,r){return t&&j.every(n,j.isArray)?c.apply(r,n):(A(n,function(n){j.isArray(n)||j.isArguments(n)?t?a.apply(r,n):M(n,t,r):r.push(n)}),r)};j.flatten=function(n,t){return M(n,t,[])},j.without=function(n){return j.difference(n,o.call(arguments,1))},j.uniq=j.unique=function(n,t,r,e){j.isFunction(t)&&(e=r,r=t,t=!1);var u=r?j.map(n,r,e):n,i=[],a=[];return A(u,function(r,e){(t?e&&a[a.length-1]===r:j.contains(a,r))||(a.push(r),i.push(n[e]))}),i},j.union=function(){return j.uniq(j.flatten(arguments,!0))},j.intersection=function(n){var t=o.call(arguments,1);return j.filter(j.uniq(n),function(n){return j.every(t,function(t){return j.indexOf(t,n)>=0})})},j.difference=function(n){var t=c.apply(e,o.call(arguments,1));return j.filter(n,function(n){return!j.contains(t,n)})},j.zip=function(){for(var n=j.max(j.pluck(arguments,"length").concat(0)),t=new Array(n),r=0;n>r;r++)t[r]=j.pluck(arguments,""+r);return t},j.object=function(n,t){if(null==n)return{};for(var r={},e=0,u=n.length;u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},j.indexOf=function(n,t,r){if(null==n)return-1;var e=0,u=n.length;if(r){if("number"!=typeof r)return e=j.sortedIndex(n,t),n[e]===t?e:-1;e=0>r?Math.max(0,u+r):r}if(y&&n.indexOf===y)return n.indexOf(t,r);for(;u>e;e++)if(n[e]===t)return e;return-1},j.lastIndexOf=function(n,t,r){if(null==n)return-1;var e=null!=r;if(b&&n.lastIndexOf===b)return e?n.lastIndexOf(t,r):n.lastIndexOf(t);for(var u=e?r:n.length;u--;)if(n[u]===t)return u;return-1},j.range=function(n,t,r){arguments.length<=1&&(t=n||0,n=0),r=arguments[2]||1;for(var e=Math.max(Math.ceil((t-n)/r),0),u=0,i=new Array(e);e>u;)i[u++]=n,n+=r;return i};var R=function(){};j.bind=function(n,t){var r,e;if(_&&n.bind===_)return _.apply(n,o.call(arguments,1));if(!j.isFunction(n))throw new TypeError;return r=o.call(arguments,2),e=function(){if(!(this instanceof e))return n.apply(t,r.concat(o.call(arguments)));R.prototype=n.prototype;var u=new R;R.prototype=null;var i=n.apply(u,r.concat(o.call(arguments)));return Object(i)===i?i:u}},j.partial=function(n){var t=o.call(arguments,1);return function(){return n.apply(this,t.concat(o.call(arguments)))}},j.bindAll=function(n){var t=o.call(arguments,1);if(0===t.length)throw new Error("bindAll must be passed function names");return A(t,function(t){n[t]=j.bind(n[t],n)}),n},j.memoize=function(n,t){var r={};return t||(t=j.identity),function(){var e=t.apply(this,arguments);return j.has(r,e)?r[e]:r[e]=n.apply(this,arguments)}},j.delay=function(n,t){var r=o.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},j.defer=function(n){return j.delay.apply(j,[n,1].concat(o.call(arguments,1)))},j.throttle=function(n,t,r){var e,u,i,a=null,o=0;r||(r={});var c=function(){o=r.leading===!1?0:new Date,a=null,i=n.apply(e,u)};return function(){var l=new Date;o||r.leading!==!1||(o=l);var f=t-(l-o);return e=this,u=arguments,0>=f?(clearTimeout(a),a=null,o=l,i=n.apply(e,u)):a||r.trailing===!1||(a=setTimeout(c,f)),i}},j.debounce=function(n,t,r){var e,u,i,a,o;return function(){i=this,u=arguments,a=new Date;var c=function(){var l=new Date-a;t>l?e=setTimeout(c,t-l):(e=null,r||(o=n.apply(i,u)))},l=r&&!e;return e||(e=setTimeout(c,t)),l&&(o=n.apply(i,u)),o}},j.once=function(n){var t,r=!1;return function(){return r?t:(r=!0,t=n.apply(this,arguments),n=null,t)}},j.wrap=function(n,t){return function(){var r=[n];return a.apply(r,arguments),t.apply(this,r)}},j.compose=function(){var n=arguments;return function(){for(var t=arguments,r=n.length-1;r>=0;r--)t=[n[r].apply(this,t)];return t[0]}},j.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},j.keys=w||function(n){if(n!==Object(n))throw new TypeError("Invalid object");var t=[];for(var r in n)j.has(n,r)&&t.push(r);return t},j.values=function(n){for(var t=j.keys(n),r=t.length,e=new Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},j.pairs=function(n){for(var t=j.keys(n),r=t.length,e=new Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},j.invert=function(n){for(var t={},r=j.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},j.functions=j.methods=function(n){var t=[];for(var r in n)j.isFunction(n[r])&&t.push(r);return t.sort()},j.extend=function(n){return A(o.call(arguments,1),function(t){if(t)for(var r in t)n[r]=t[r]}),n},j.pick=function(n){var t={},r=c.apply(e,o.call(arguments,1));return A(r,function(r){r in n&&(t[r]=n[r])}),t},j.omit=function(n){var t={},r=c.apply(e,o.call(arguments,1));for(var u in n)j.contains(r,u)||(t[u]=n[u]);return t},j.defaults=function(n){return A(o.call(arguments,1),function(t){if(t)for(var r in t)n[r]===void 0&&(n[r]=t[r])}),n},j.clone=function(n){return j.isObject(n)?j.isArray(n)?n.slice():j.extend({},n):n},j.tap=function(n,t){return t(n),n};var S=function(n,t,r,e){if(n===t)return 0!==n||1/n==1/t;if(null==n||null==t)return n===t;n instanceof j&&(n=n._wrapped),t instanceof j&&(t=t._wrapped);var u=l.call(n);if(u!=l.call(t))return!1;switch(u){case"[object String]":return n==String(t);case"[object Number]":return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case"[object Date]":case"[object Boolean]":return+n==+t;case"[object RegExp]":return n.source==t.source&&n.global==t.global&&n.multiline==t.multiline&&n.ignoreCase==t.ignoreCase}if("object"!=typeof n||"object"!=typeof t)return!1;for(var i=r.length;i--;)if(r[i]==n)return e[i]==t;var a=n.constructor,o=t.constructor;if(a!==o&&!(j.isFunction(a)&&a instanceof a&&j.isFunction(o)&&o instanceof o))return!1;r.push(n),e.push(t);var c=0,f=!0;if("[object Array]"==u){if(c=n.length,f=c==t.length)for(;c--&&(f=S(n[c],t[c],r,e)););}else{for(var s in n)if(j.has(n,s)&&(c++,!(f=j.has(t,s)&&S(n[s],t[s],r,e))))break;if(f){for(s in t)if(j.has(t,s)&&!c--)break;f=!c}}return r.pop(),e.pop(),f};j.isEqual=function(n,t){return S(n,t,[],[])},j.isEmpty=function(n){if(null==n)return!0;if(j.isArray(n)||j.isString(n))return 0===n.length;for(var t in n)if(j.has(n,t))return!1;return!0},j.isElement=function(n){return!(!n||1!==n.nodeType)},j.isArray=x||function(n){return"[object Array]"==l.call(n)},j.isObject=function(n){return n===Object(n)},A(["Arguments","Function","String","Number","Date","RegExp"],function(n){j["is"+n]=function(t){return l.call(t)=="[object "+n+"]"}}),j.isArguments(arguments)||(j.isArguments=function(n){return!(!n||!j.has(n,"callee"))}),"function"!=typeof/./&&(j.isFunction=function(n){return"function"==typeof n}),j.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},j.isNaN=function(n){return j.isNumber(n)&&n!=+n},j.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"==l.call(n)},j.isNull=function(n){return null===n},j.isUndefined=function(n){return n===void 0},j.has=function(n,t){return f.call(n,t)},j.noConflict=function(){return n._=t,this},j.identity=function(n){return n},j.times=function(n,t,r){for(var e=Array(Math.max(0,n)),u=0;n>u;u++)e[u]=t.call(r,u);return e},j.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))};var I={escape:{"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;"}};I.unescape=j.invert(I.escape);var T={escape:new RegExp("["+j.keys(I.escape).join("")+"]","g"),unescape:new RegExp("("+j.keys(I.unescape).join("|")+")","g")};j.each(["escape","unescape"],function(n){j[n]=function(t){return null==t?"":(""+t).replace(T[n],function(t){return I[n][t]})}}),j.result=function(n,t){if(null==n)return void 0;var r=n[t];return j.isFunction(r)?r.call(n):r},j.mixin=function(n){A(j.functions(n),function(t){var r=j[t]=n[t];j.prototype[t]=function(){var n=[this._wrapped];return a.apply(n,arguments),z.call(this,r.apply(j,n))}})};var N=0;j.uniqueId=function(n){var t=++N+"";return n?n+t:t},j.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var q=/(.)^/,B={"'":"'","\\":"\\","\r":"r","\n":"n"," ":"t","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\t|\u2028|\u2029/g;j.template=function(n,t,r){var e;r=j.defaults({},r,j.templateSettings);var u=new RegExp([(r.escape||q).source,(r.interpolate||q).source,(r.evaluate||q).source].join("|")+"|$","g"),i=0,a="__p+='";n.replace(u,function(t,r,e,u,o){return a+=n.slice(i,o).replace(D,function(n){return"\\"+B[n]}),r&&(a+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'"),e&&(a+="'+\n((__t=("+e+"))==null?'':__t)+\n'"),u&&(a+="';\n"+u+"\n__p+='"),i=o+t.length,t}),a+="';\n",r.variable||(a="with(obj||{}){\n"+a+"}\n"),a="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+a+"return __p;\n";try{e=new Function(r.variable||"obj","_",a)}catch(o){throw o.source=a,o}if(t)return e(t,j);var c=function(n){return e.call(this,n,j)};return c.source="function("+(r.variable||"obj")+"){\n"+a+"}",c},j.chain=function(n){return j(n).chain()};var z=function(n){return this._chain?j(n).chain():n};j.mixin(j),A(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=e[n];j.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!=n&&"splice"!=n||0!==r.length||delete r[0],z.call(this,r)}}),A(["concat","join","slice"],function(n){var t=e[n];j.prototype[n]=function(){return z.call(this,t.apply(this._wrapped,arguments))}}),j.extend(j.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}).call(this);
6//# sourceMappingURL=underscore-min.map
  
1(function(swtmkr) {
2
3 //TODO: find a better way to init.
4 //Find a better way to do closure
5 //Remove script code from the HTML page
6 swtmkr.init = function() {
7 swtmkr.appView = new AppView();
8 swtmkr.img = {};
9 swtmkr.img.H = 300;
10 swtmkr.img.W = 800;
11 swtmkr.sweets = new Sweets();
12 swtmkr.who = 'Guest';
13 };
14
15 var ImgAnnoSwt = Backbone.Model.extend({
16 defaults: {
17 '__sweeted__': false,
18 'who': '',
19 'what': 'img-anno',
20 'where': '',
21 'how': {}
22 }
23 });
24
25 var Sweets = Backbone.Collection.extend({
26 model: ImgAnnoSwt
27 });
28
29 var AppView = Backbone.View.extend({
30 el: $('#swt-maker'),
31 events: {
32 'click #img-url-submit': 'setImage',
33 'click #sweet': 'makeSweet'
34 },
35 initialize: function() {
36 //var allElements = $('body *');
37 this.helpview = new HelpView();
38 anno.addHandler('onAnnotationCreated', this.showSwtHelp);
39 anno.addHandler('onAnnotationUpdated', this.showSwtHelp);
40 },
41 setImage: function() {
42 anno.reset();
43 this.helpview.step(2);
44 var img = $('#annotatable-img');
45 img.attr('src', $('#img-url-input').val());
46 img.attr('height', 500);
47 img.attr('width', 800);
48 // img is a jquery object which annotorious doesn't accept; instead it
49 // takes the native object returned by a browser API; fortunately, jqeury
50 // stores a copy of the native object too!
51 anno.makeAnnotatable(img[0]);
52 },
53 showSwtHelp: function(annotation) {
54 var self = swtmkr.appView;//TODO: figure out how we can bind the scope when this func is called as a callback
55 self.helpview.step(3);
56 $('#sweet-button').html('<button id="sweet">Sweet</button>');
57 },
58 makeSweet: function() {
59 var annos = anno.getAnnotations();
60 var template = _.template($('#sweet-template').html());
61 _.each(annos, function(anno) {
62 swtmkr.sweets.add({
63 who: swtmkr.who,
64 where: anno.src,
65 how: anno
66 });
67 });
68 $('#sweet-list').html('Your sweet(s)');
69 _.each(swtmkr.sweets.models, function(swt) {
70 $('#sweet-list').append(template({
71 who: swt.get('who'),
72 what: swt.get('what'),
73 where: swt.get('where'),
74 how: JSON.stringify(swt.get('how').text)
75 }));
76 });
77 }
78 });
79
80 var HelpView = Backbone.View.extend({
81 el: $('#helpview'),
82 events: {
83 },
84 initialize: function() {
85 this.step(1);
86 },
87 step: function(n) {
88 var text = '';
89 switch (n) {
90 case 1: text = 'Enter the URL of an image below, and start annotating!';
91 break;
92 case 2: text = '';
93 break;
94 case 3: text = 'Now you can sweet this annotation';
95 break;
96 }
97 $(this.el).html(text);
98 }
99 });
100
101 swtmkr.AppView = AppView;
102})(swtmkr);
Binary files differ
  
1HOST='http://127.0.0.1'
2PORT=5000
3swtstoreURL='http://sweet/store/url'
4debug=True
  
1#!/usr/bin/python
2
3import flask
4import conf
5
6app = flask.Flask(__name__)
7
8@app.route('/', methods=['GET'])
9def index():
10 return flask.render_template('index.html',
11 url=flask.request.args.get('where'),
12 conf=conf)
13
14
15if __name__ == '__main__':
16 app.run(debug=conf.debug, host=conf.HOST, port=conf.PORT)
  
1/** Global item styles **/
2
3.annotorious-opacity-fade {
4 -moz-transition-property: opacity;
5 -moz-transition-duration: 0.5s;
6 -moz-transition-delay: 0s;
7 -webkit-transition-property: opacity;
8 -webkit-transition-duration: 0.5s;
9 -webkit-transition-delay: 0s;
10 -o-transition-property: opacity;
11 -o-transition-duration: 0.5s;
12 -o-transition-delay: 0s;
13 transition-property: opacity;
14 transition-duration: 0.5s;
15 transition-delay: 0s;
16}
17
18.annotorious-item-focus {
19 opacity:1.0;
20}
21
22.annotorious-item-unfocus {
23 opacity:0.4;
24}
25
26/** Hint/help popup **/
27
28.annotorious-hint-msg {
29 background-color:rgba(0,0,0,0.5);
30 margin:4px;
31 padding:8px 15px 8px 30px;
32 font-family: 'lucida grande',tahoma,verdana,arial,sans-serif;
33 line-height: normal;
34 font-size:12px;
35 color:#fff;
36 border-radius:4px;
37 -moz-border-radius:4px;
38 -webkit-border-radius:4px;
39 -khtml-border-radius:4px;
40}
41
42.annotorious-hint-icon {
43 position:absolute;
44 top:6px;
45 left: 5px;
46 background:url('feather_icon.png');
47 background-repeat:no-repeat;
48 width:19px;
49 height:22px;
50 margin:2px 4px 0px 6px;
51}
52
53/** Popup **/
54
55.annotorious-popup {
56 line-height:135%;
57 font-family:Arial, Verdana, Sans;
58 font-size:12px;
59 color:#000;
60 background-color:#fff;
61 border:1px solid #ccc;
62 padding:9px 8px;
63 word-wrap:break-word;
64 width:180px;
65 border-radius: 3px;
66 -moz-border-radius: 3px;
67 -webkit-border-radius: 3px;
68 -khtml-border-radius: 3px;
69 -moz-box-shadow:0px 5px 15px #111;
70 -webkit-box-shadow:0px 5px 15px #111;
71 box-shadow:0px 5px 15px #111;
72
73 -moz-transition-property: opacity;
74 -moz-transition-duration: 0.5s;
75 -moz-transition-delay: 0s;
76 -webkit-transition-property: opacity;
77 -webkit-transition-duration: 0.5s;
78 -webkit-transition-delay: 0s;
79 -o-transition-property: opacity;
80 -o-transition-duration: 0.5s;
81 -o-transition-delay: 0s;
82 transition-property: opacity;
83 transition-duration: 0.5s;
84 transition-delay: 0s;
85}
86
87.annotorious-popup-empty {
88 color:#999;
89 font-style:italic;
90}
91
92.annotorious-popup-buttons {
93 float:right;
94 margin:0px 0px 1px 10px;
95 height:16px;
96
97 -moz-transition-property: opacity;
98 -moz-transition-duration: 1s;
99 -moz-transition-delay: 0s;
100 -webkit-transition-property: opacity;
101 -webkit-transition-duration: 1s;
102 -webkit-transition-delay: 0s;
103 -o-transition-property: opacity;
104 -o-transition-duration: 1s;
105 -o-transition-delay: 0s;
106 transition-property: opacity;
107 transition-duration: 1s;
108 transition-delay: 0s;
109}
110
111.annotorious-popup-button {
112 font-size:10px;
113 text-decoration:none;
114 display:inline-block;
115 color:#000;
116 font-weight:bold;
117 margin-left:5px;
118 opacity:0.4;
119
120 -moz-transition-property: opacity;
121 -moz-transition-duration: 0.5s;
122 -moz-transition-delay: 0s;
123 -webkit-transition-property: opacity;
124 -webkit-transition-duration: 0.5s;
125 -webkit-transition-delay: 0s;
126 -o-transition-property: opacity;
127 -o-transition-duration: 0.5s;
128 -o-transition-delay: 0s;
129 transition-property: opacity;
130 transition-duration: 0.5s;
131 transition-delay: 0s;
132}
133
134.annotorious-popup-button:hover {
135 background-color:transparent;
136}
137
138.annotorious-popup-button-active {
139 opacity:0.9;
140}
141
142.annotorious-popup-button-edit {
143 background:url(pencil.png);
144 width:16px;
145 height:16px;
146 text-indent:100px;
147 overflow:hidden;
148}
149
150.annotorious-popup-button-delete {
151 background:url(delete.png);
152 width:16px;
153 height:16px;
154 text-indent:100px;
155 overflow:hidden;
156 float:right;
157}
158
159.annotorious-popup-field {
160 border-top:1px solid #ccc;
161 margin:6px 0px 0px 0px;
162 padding-top:2px;
163}
164
165/** Editor **/
166
167.annotorious-editor {
168 line-height: normal;
169 padding:0px 0px 2px 0px;
170 background-color:#f2f2f2;
171 color:#000;
172 opacity:0.97;
173 border:1px solid #ccc;
174 border-radius: 3px;
175 -moz-border-radius: 3px;
176 -webkit-border-radius: 3px;
177 -khtml-border-radius: 3px;
178 -moz-box-shadow:0px 5px 15px #111;
179 -webkit-box-shadow:0px 5px 15px #111;
180 box-shadow:0px 5px 15px #111;
181}
182
183.annotorious-editor-text {
184 border-width:0px 0px 1px 0px;
185 border-style:solid;
186 border-color:#ccc;
187 line-height: normal;
188 background-color:#fff;
189 width:240px;
190 height:50px;
191 outline:none;
192 font-family:Verdana, Arial;
193 font-size:11px;
194 padding:4px;
195 margin:0px;
196 color:#000;
197 text-shadow:none;
198 overflow-y:auto;
199 display:block;
200}
201
202.annotorious-editor-button-container {
203 padding-top:2px;
204}
205
206.annotorious-editor-button {
207 float:right;
208 line-height: normal;
209 display:inline-block;
210 text-align:center;
211 text-decoration:none;
212 font-family:Verdana, Arial;
213 font-size:10px;
214 border:1px solid #777;
215 color:#ddd;
216 padding:3px 8px;
217 margin:1px 2px 0px 1px;
218 cursor:pointer;
219 cursor:hand;
220 background:-webkit-gradient(linear, left top, left bottom, from(#888), to(#555));
221 background:-moz-linear-gradient(top, #888, #555);
222 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#888888', endColorstr='#555555');
223 -moz-border-radius:2px;
224 -webkit-border-radius:2px;
225 -khtml-border-radius:2px;
226 border-radius:2px;
227}
228
229.annotorious-editor-button:hover {
230 background:#999;
231}
232
233.annotorious-editor-field {
234 border-bottom:1px solid #ccc;
235 margin:0px;
236 background-color:#fff;
237 padding:3px;
238 font-family:Verdana, Arial;
239 font-size:12px;
240}
241
242/** OpenLayers module **/
243.annotorious-ol-boxmarker-outer {
244 border:1px solid #000;
245}
246
247.annotorious-ol-boxmarker-inner {
248 border:1px solid #fff;
249 -webkit-box-sizing: border-box;
250 -moz-box-sizing: border-box;
251 -ms-box-sizing: border-box;
252 box-sizing: border-box;
253}
254
255.annotorious-ol-hint {
256 line-height: normal;
257 font-family:Arial, Verdana, Sans;
258 font-size:16px;
259 color:#000;
260 background-color:#fff;
261 margin:0px;
262 padding:9px;
263 border-radius: 5px;
264 -moz-border-radius: 5px;
265 -webkit-border-radius: 5px;
266 -khtml-border-radius: 5px;
267}
268
269.annotorious-ol-hint-secondary {
270 background-color:#fff000;
271}
272
273canvas {
274 z-index: 2;
275}
276
277canvas.hidden {
278 z-index: -1;
279 visibility: hidden;
280}
281
282html.hasTouch .annotator-viewer li .annotator-controls,
283html.hasTouch .annotator-viewer li .annotator-controls {
284 opacity: 1;
285}
  
1.btn-default,.btn-primary,.btn-success,.btn-info,.btn-warning,.btn-danger{text-shadow:0 -1px 0 rgba(0,0,0,0.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075)}.btn-default:active,.btn-primary:active,.btn-success:active,.btn-info:active,.btn-warning:active,.btn-danger:active,.btn-default.active,.btn-primary.active,.btn-success.active,.btn-info.active,.btn-warning.active,.btn-danger.active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn:active,.btn.active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left 0,left 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,0%,#e6e6e6,100%);background-image:-moz-linear-gradient(top,#fff 0,#e6e6e6 100%);background-image:linear-gradient(to bottom,#fff 0,#e6e6e6 100%);background-repeat:repeat-x;border-color:#e0e0e0;border-color:#ccc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0)}.btn-default:active,.btn-default.active{background-color:#e6e6e6;border-color:#e0e0e0}.btn-primary{background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#3071a9));background-image:-webkit-linear-gradient(top,#428bca,0%,#3071a9,100%);background-image:-moz-linear-gradient(top,#428bca 0,#3071a9 100%);background-image:linear-gradient(to bottom,#428bca 0,#3071a9 100%);background-repeat:repeat-x;border-color:#2d6ca2;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff3071a9',GradientType=0)}.btn-primary:active,.btn-primary.active{background-color:#3071a9;border-color:#2d6ca2}.btn-success{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5cb85c),to(#449d44));background-image:-webkit-linear-gradient(top,#5cb85c,0%,#449d44,100%);background-image:-moz-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);background-repeat:repeat-x;border-color:#419641;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c',endColorstr='#ff449d44',GradientType=0)}.btn-success:active,.btn-success.active{background-color:#449d44;border-color:#419641}.btn-warning{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f0ad4e),to(#ec971f));background-image:-webkit-linear-gradient(top,#f0ad4e,0%,#ec971f,100%);background-image:-moz-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);background-repeat:repeat-x;border-color:#eb9316;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e',endColorstr='#ffec971f',GradientType=0)}.btn-warning:active,.btn-warning.active{background-color:#ec971f;border-color:#eb9316}.btn-danger{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9534f),to(#c9302c));background-image:-webkit-linear-gradient(top,#d9534f,0%,#c9302c,100%);background-image:-moz-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);background-repeat:repeat-x;border-color:#c12e2a;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f',endColorstr='#ffc9302c',GradientType=0)}.btn-danger:active,.btn-danger.active{background-color:#c9302c;border-color:#c12e2a}.btn-info{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5bc0de),to(#31b0d5));background-image:-webkit-linear-gradient(top,#5bc0de,0%,#31b0d5,100%);background-image:-moz-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);background-repeat:repeat-x;border-color:#2aabd2;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff31b0d5',GradientType=0)}.btn-info:active,.btn-info.active{background-color:#31b0d5;border-color:#2aabd2}.thumbnail,.img-thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.075);box-shadow:0 1px 2px rgba(0,0,0,0.075)}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{background-color:#357ebd;background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#357ebd));background-image:-webkit-linear-gradient(top,#428bca,0%,#357ebd,100%);background-image:-moz-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff357ebd',GradientType=0)}.navbar{background-image:-webkit-gradient(linear,left 0,left 100%,from(#fff),to(#f8f8f8));background-image:-webkit-linear-gradient(top,#fff,0%,#f8f8f8,100%);background-image:-moz-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);background-repeat:repeat-x;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff8f8f8',GradientType=0);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 5px rgba(0,0,0,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 5px rgba(0,0,0,0.075)}.navbar .navbar-nav>.active>a{background-color:#f8f8f8}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,0.25)}.navbar-inverse{background-image:-webkit-gradient(linear,left 0,left 100%,from(#3c3c3c),to(#222));background-image:-webkit-linear-gradient(top,#3c3c3c,0%,#222,100%);background-image:-moz-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c',endColorstr='#ff222222',GradientType=0)}.navbar-inverse .navbar-nav>.active>a{background-color:#222}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-static-top,.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}.alert{text-shadow:0 1px 0 rgba(255,255,255,0.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.25),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.25),0 1px 2px rgba(0,0,0,0.05)}.alert-success{background-image:-webkit-gradient(linear,left 0,left 100%,from(#dff0d8),to(#c8e5bc));background-image:-webkit-linear-gradient(top,#dff0d8,0%,#c8e5bc,100%);background-image:-moz-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);background-repeat:repeat-x;border-color:#b2dba1;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8',endColorstr='#ffc8e5bc',GradientType=0)}.alert-info{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9edf7),to(#b9def0));background-image:-webkit-linear-gradient(top,#d9edf7,0%,#b9def0,100%);background-image:-moz-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);background-repeat:repeat-x;border-color:#9acfea;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7',endColorstr='#ffb9def0',GradientType=0)}.alert-warning{background-image:-webkit-gradient(linear,left 0,left 100%,from(#fcf8e3),to(#f8efc0));background-image:-webkit-linear-gradient(top,#fcf8e3,0%,#f8efc0,100%);background-image:-moz-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);background-repeat:repeat-x;border-color:#f5e79e;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3',endColorstr='#fff8efc0',GradientType=0)}.alert-danger{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f2dede),to(#e7c3c3));background-image:-webkit-linear-gradient(top,#f2dede,0%,#e7c3c3,100%);background-image:-moz-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);background-repeat:repeat-x;border-color:#dca7a7;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede',endColorstr='#ffe7c3c3',GradientType=0)}.progress{background-image:-webkit-gradient(linear,left 0,left 100%,from(#ebebeb),to(#f5f5f5));background-image:-webkit-linear-gradient(top,#ebebeb,0%,#f5f5f5,100%);background-image:-moz-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb',endColorstr='#fff5f5f5',GradientType=0)}.progress-bar{background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#3071a9));background-image:-webkit-linear-gradient(top,#428bca,0%,#3071a9,100%);background-image:-moz-linear-gradient(top,#428bca 0,#3071a9 100%);background-image:linear-gradient(to bottom,#428bca 0,#3071a9 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff3071a9',GradientType=0)}.progress-bar-success{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5cb85c),to(#449d44));background-image:-webkit-linear-gradient(top,#5cb85c,0%,#449d44,100%);background-image:-moz-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c',endColorstr='#ff449d44',GradientType=0)}.progress-bar-info{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5bc0de),to(#31b0d5));background-image:-webkit-linear-gradient(top,#5bc0de,0%,#31b0d5,100%);background-image:-moz-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff31b0d5',GradientType=0)}.progress-bar-warning{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f0ad4e),to(#ec971f));background-image:-webkit-linear-gradient(top,#f0ad4e,0%,#ec971f,100%);background-image:-moz-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e',endColorstr='#ffec971f',GradientType=0)}.progress-bar-danger{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9534f),to(#c9302c));background-image:-webkit-linear-gradient(top,#d9534f,0%,#c9302c,100%);background-image:-moz-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f',endColorstr='#ffc9302c',GradientType=0)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.075);box-shadow:0 1px 2px rgba(0,0,0,0.075)}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{text-shadow:0 -1px 0 #3071a9;background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#3278b3));background-image:-webkit-linear-gradient(top,#428bca,0%,#3278b3,100%);background-image:-moz-linear-gradient(top,#428bca 0,#3278b3 100%);background-image:linear-gradient(to bottom,#428bca 0,#3278b3 100%);background-repeat:repeat-x;border-color:#3278b3;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff3278b3',GradientType=0)}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.panel-default>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f5f5f5),to(#e8e8e8));background-image:-webkit-linear-gradient(top,#f5f5f5,0%,#e8e8e8,100%);background-image:-moz-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#ffe8e8e8',GradientType=0)}.panel-primary>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#357ebd));background-image:-webkit-linear-gradient(top,#428bca,0%,#357ebd,100%);background-image:-moz-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff357ebd',GradientType=0)}.panel-success>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#dff0d8),to(#d0e9c6));background-image:-webkit-linear-gradient(top,#dff0d8,0%,#d0e9c6,100%);background-image:-moz-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8',endColorstr='#ffd0e9c6',GradientType=0)}.panel-info>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9edf7),to(#c4e3f3));background-image:-webkit-linear-gradient(top,#d9edf7,0%,#c4e3f3,100%);background-image:-moz-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7',endColorstr='#ffc4e3f3',GradientType=0)}.panel-warning>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#fcf8e3),to(#faf2cc));background-image:-webkit-linear-gradient(top,#fcf8e3,0%,#faf2cc,100%);background-image:-moz-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3',endColorstr='#fffaf2cc',GradientType=0)}.panel-danger>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f2dede),to(#ebcccc));background-image:-webkit-linear-gradient(top,#f2dede,0%,#ebcccc,100%);background-image:-moz-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede',endColorstr='#ffebcccc',GradientType=0)}.well{background-image:-webkit-gradient(linear,left 0,left 100%,from(#e8e8e8),to(#f5f5f5));background-image:-webkit-linear-gradient(top,#e8e8e8,0%,#f5f5f5,100%);background-image:-moz-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);background-repeat:repeat-x;border-color:#dcdcdc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8',endColorstr='#fff5f5f5',GradientType=0);-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,0.05),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 3px rgba(0,0,0,0.05),0 1px 0 rgba(255,255,255,0.1)}
  
1/*!
2 * Bootstrap v3.0.0
3 *
4 * Copyright 2013 Twitter, Inc
5 * Licensed under the Apache License v2.0
6 * http://www.apache.org/licenses/LICENSE-2.0
7 *
8 * Designed and built with all the love in the world by @mdo and @fat.
9 *//*! normalize.css v2.1.0 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{margin:.67em 0;font-size:2em}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}mark{color:#000;background:#ff0}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid #c0c0c0}legend{padding:0;border:0}button,input,select,textarea{margin:0;font-family:inherit;font-size:100%}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{padding:0;box-sizing:border-box}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:2cm .5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}button,input,select[multiple],textarea{background-image:none}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}img{vertical-align:middle}.img-responsive{display:block;height:auto;max-width:100%}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16.099999999999998px;font-weight:200;line-height:1.4}@media(min-width:768px){.lead{font-size:21px}}small{font-size:85%}cite{font-style:normal}.text-muted{color:#999}.text-primary{color:#428bca}.text-warning{color:#c09853}.text-danger{color:#b94a48}.text-success{color:#468847}.text-info{color:#3a87ad}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{margin-top:20px;margin-bottom:10px}h4,h5,h6{margin-top:10px;margin-bottom:10px}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}h1 small,.h1 small{font-size:24px}h2 small,.h2 small{font-size:18px}h3 small,.h3 small,h4 small,.h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}@media(min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}blockquote p:last-child{margin-bottom:0}blockquote small{display:block;line-height:1.428571429;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:1.428571429}code,pre{font-family:Monaco,Menlo,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.row{margin-right:-15px;margin-left:-15px}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11{float:left}.col-xs-1{width:8.333333333333332%}.col-xs-2{width:16.666666666666664%}.col-xs-3{width:25%}.col-xs-4{width:33.33333333333333%}.col-xs-5{width:41.66666666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.333333333333336%}.col-xs-8{width:66.66666666666666%}.col-xs-9{width:75%}.col-xs-10{width:83.33333333333334%}.col-xs-11{width:91.66666666666666%}.col-xs-12{width:100%}@media(min-width:768px){.container{max-width:750px}.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11{float:left}.col-sm-1{width:8.333333333333332%}.col-sm-2{width:16.666666666666664%}.col-sm-3{width:25%}.col-sm-4{width:33.33333333333333%}.col-sm-5{width:41.66666666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.333333333333336%}.col-sm-8{width:66.66666666666666%}.col-sm-9{width:75%}.col-sm-10{width:83.33333333333334%}.col-sm-11{width:91.66666666666666%}.col-sm-12{width:100%}.col-sm-push-1{left:8.333333333333332%}.col-sm-push-2{left:16.666666666666664%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.33333333333333%}.col-sm-push-5{left:41.66666666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.333333333333336%}.col-sm-push-8{left:66.66666666666666%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.33333333333334%}.col-sm-push-11{left:91.66666666666666%}.col-sm-pull-1{right:8.333333333333332%}.col-sm-pull-2{right:16.666666666666664%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.33333333333333%}.col-sm-pull-5{right:41.66666666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.333333333333336%}.col-sm-pull-8{right:66.66666666666666%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.33333333333334%}.col-sm-pull-11{right:91.66666666666666%}.col-sm-offset-1{margin-left:8.333333333333332%}.col-sm-offset-2{margin-left:16.666666666666664%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.33333333333333%}.col-sm-offset-5{margin-left:41.66666666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.333333333333336%}.col-sm-offset-8{margin-left:66.66666666666666%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.33333333333334%}.col-sm-offset-11{margin-left:91.66666666666666%}}@media(min-width:992px){.container{max-width:970px}.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11{float:left}.col-md-1{width:8.333333333333332%}.col-md-2{width:16.666666666666664%}.col-md-3{width:25%}.col-md-4{width:33.33333333333333%}.col-md-5{width:41.66666666666667%}.col-md-6{width:50%}.col-md-7{width:58.333333333333336%}.col-md-8{width:66.66666666666666%}.col-md-9{width:75%}.col-md-10{width:83.33333333333334%}.col-md-11{width:91.66666666666666%}.col-md-12{width:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.333333333333332%}.col-md-push-2{left:16.666666666666664%}.col-md-push-3{left:25%}.col-md-push-4{left:33.33333333333333%}.col-md-push-5{left:41.66666666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.333333333333336%}.col-md-push-8{left:66.66666666666666%}.col-md-push-9{left:75%}.col-md-push-10{left:83.33333333333334%}.col-md-push-11{left:91.66666666666666%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.333333333333332%}.col-md-pull-2{right:16.666666666666664%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.33333333333333%}.col-md-pull-5{right:41.66666666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.333333333333336%}.col-md-pull-8{right:66.66666666666666%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.33333333333334%}.col-md-pull-11{right:91.66666666666666%}.col-md-offset-0{margin-left:0}.col-md-offset-1{margin-left:8.333333333333332%}.col-md-offset-2{margin-left:16.666666666666664%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.33333333333333%}.col-md-offset-5{margin-left:41.66666666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.333333333333336%}.col-md-offset-8{margin-left:66.66666666666666%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.33333333333334%}.col-md-offset-11{margin-left:91.66666666666666%}}@media(min-width:1200px){.container{max-width:1170px}.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11{float:left}.col-lg-1{width:8.333333333333332%}.col-lg-2{width:16.666666666666664%}.col-lg-3{width:25%}.col-lg-4{width:33.33333333333333%}.col-lg-5{width:41.66666666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.333333333333336%}.col-lg-8{width:66.66666666666666%}.col-lg-9{width:75%}.col-lg-10{width:83.33333333333334%}.col-lg-11{width:91.66666666666666%}.col-lg-12{width:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.333333333333332%}.col-lg-push-2{left:16.666666666666664%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.33333333333333%}.col-lg-push-5{left:41.66666666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.333333333333336%}.col-lg-push-8{left:66.66666666666666%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.33333333333334%}.col-lg-push-11{left:91.66666666666666%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.333333333333332%}.col-lg-pull-2{right:16.666666666666664%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.33333333333333%}.col-lg-pull-5{right:41.66666666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.333333333333336%}.col-lg-pull-8{right:66.66666666666666%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.33333333333334%}.col-lg-pull-11{right:91.66666666666666%}.col-lg-offset-0{margin-left:0}.col-lg-offset-1{margin-left:8.333333333333332%}.col-lg-offset-2{margin-left:16.666666666666664%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.33333333333333%}.col-lg-offset-5{margin-left:41.66666666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.333333333333336%}.col-lg-offset-8{margin-left:66.66666666666666%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.33333333333334%}.col-lg-offset-11{margin-left:91.66666666666666%}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table thead>tr>th,.table tbody>tr>th,.table tfoot>tr>th,.table thead>tr>td,.table tbody>tr>td,.table tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table caption+thead tr:first-child th,.table colgroup+thead tr:first-child th,.table thead:first-child tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed thead>tr>th,.table-condensed tbody>tr>th,.table-condensed tfoot>tr>th,.table-condensed thead>tr>td,.table-condensed tbody>tr>td,.table-condensed tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*="col-"]{display:table-column;float:none}table td[class*="col-"],table th[class*="col-"]{display:table-cell;float:none}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8;border-color:#d6e9c6}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td{background-color:#d0e9c6;border-color:#c9e2b3}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede;border-color:#eed3d7}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td{background-color:#ebcccc;border-color:#e6c1c7}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3;border-color:#fbeed5}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td{background-color:#faf2cc;border-color:#f8e5be}@media(max-width:768px){.table-responsive{width:100%;margin-bottom:15px;overflow-x:scroll;overflow-y:hidden;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0;background-color:#fff}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>thead>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>thead>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}select[multiple],select[size]{height:auto}select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{height:auto}.form-control:-moz-placeholder{color:#999}.form-control::-moz-placeholder{color:#999}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}textarea.form-control{height:auto}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.radio label,.checkbox label{display:inline;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:normal;vertical-align:middle;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="checkbox"][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm{height:auto}.input-lg{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:45px;line-height:45px}textarea.input-lg{height:auto}.has-warning .help-block,.has-warning .control-label{color:#c09853}.has-warning .form-control{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.has-warning .input-group-addon{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.has-error .help-block,.has-error .control-label{color:#b94a48}.has-error .form-control{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.has-error .input-group-addon{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.has-success .help-block,.has-success .control-label{color:#468847}.has-success .form-control{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.has-success .input-group-addon{color:#468847;background-color:#dff0d8;border-color:#468847}.form-control-static{padding-top:7px;margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block}.form-inline .radio,.form-inline .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:none;margin-left:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}@media(min-width:768px){.form-horizontal .control-label{text-align:right}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;border:1px solid transparent;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-link{font-weight:normal;color:#428bca;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-xs{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs{padding:1px 5px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url('../fonts/glyphicons-halflings-regular.eot');src:url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/glyphicons-halflings-regular.woff') format('woff'),url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';-webkit-font-smoothing:antialiased;font-style:normal;font-weight:normal;line-height:1}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-print:before{content:"\e045"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-briefcase:before{content:"\1f4bc"}.glyphicon-calendar:before{content:"\1f4c5"}.glyphicon-pushpin:before{content:"\1f4cc"}.glyphicon-paperclip:before{content:"\1f4ce"}.glyphicon-camera:before{content:"\1f4f7"}.glyphicon-lock:before{content:"\1f512"}.glyphicon-bell:before{content:"\1f514"}.glyphicon-bookmark:before{content:"\1f516"}.glyphicon-fire:before{content:"\1f525"}.glyphicon-wrench:before{content:"\1f527"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid #000;border-right:4px solid transparent;border-bottom:0 dotted;border-left:4px solid transparent;content:""}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#fff;text-decoration:none;background-color:#428bca}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#428bca;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}}.btn-default .caret{border-top-color:#333}.btn-primary .caret,.btn-success .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret{border-top-color:#fff}.dropup .btn-default .caret{border-bottom-color:#333}.dropup .btn-primary .caret,.dropup .btn-success .caret,.dropup .btn-warning .caret,.dropup .btn-danger .caret,.dropup .btn-info .caret{border-bottom-color:#fff}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group{float:left}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group,.btn-toolbar>.btn-group+.btn-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group-xs>.btn{padding:5px 10px;padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-bottom-left-radius:4px;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child>.btn:last-child,.btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.btn-group-justified .btn{display:table-cell;float:none;width:1%}[data-toggle="buttons"]>.btn>input[type="radio"],[data-toggle="buttons"]>.btn>input[type="checkbox"]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group.col{float:none;padding-right:0;padding-left:0}.input-group .form-control{width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:45px;line-height:45px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-4px}.input-group-btn>.btn:hover,.input-group-btn>.btn:active{z-index:2}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}}.nav-tabs.nav-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs.nav-justified>.active>a{border-bottom-color:#fff}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:5px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-justified>li{display:table-cell;width:1%}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs-justified>.active>a{border-bottom-color:#fff}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.nav .caret{border-top-color:#428bca;border-bottom-color:#428bca}.nav a:hover .caret{border-top-color:#2a6496;border-bottom-color:#2a6496}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;z-index:1000;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}@media(min-width:768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}@media(min-width:768px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media(min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-collapse .navbar-nav.navbar-left:first-child{margin-left:-15px}.navbar-collapse .navbar-nav.navbar-right:last-child{margin-right:-15px}.navbar-collapse .navbar-text:last-child{margin-right:0}}.container>.navbar-header,.container>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media(min-width:768px){.container>.navbar-header,.container>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{border-width:0 0 1px}@media(min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;border-width:0 0 1px}@media(min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;z-index:1030}.navbar-fixed-bottom{bottom:0;margin-bottom:0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media(min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;border:1px solid transparent;border-radius:4px}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media(min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media(max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media(min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}@media(min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}@media(min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{float:none;margin-left:0}}@media(max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media(min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-nav.pull-right>li>.dropdown-menu,.navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-text{float:left;margin-top:15px;margin-bottom:15px}@media(min-width:768px){.navbar-text{margin-right:15px;margin-left:15px}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e6e6e6}.navbar-default .navbar-nav>.dropdown>a:hover .caret,.navbar-default .navbar-nav>.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.open>a .caret,.navbar-default .navbar-nav>.open>a:hover .caret,.navbar-default .navbar-nav>.open>a:focus .caret{border-top-color:#555;border-bottom-color:#555}.navbar-default .navbar-nav>.dropdown>a .caret{border-top-color:#777;border-bottom-color:#777}@media(max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.dropdown>a:hover .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-nav>.dropdown>a .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .navbar-nav>.open>a .caret,.navbar-inverse .navbar-nav>.open>a:hover .caret,.navbar-inverse .navbar-nav>.open>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}@media(max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.428571429;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{background-color:#eee}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:#428bca;border-color:#428bca}.pagination>.disabled>span,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:#808080}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#999;border-radius:10px}.badge:empty{display:none}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.btn .badge{position:relative;top:-1px}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.jumbotron h1{line-height:1;color:inherit}.jumbotron p{line-height:1.4}.container .jumbotron{border-radius:6px}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron h1{font-size:63px}}.thumbnail{display:inline-block;display:block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img{display:block;height:auto;max-width:100%}a.thumbnail:hover,a.thumbnail:focus{border-color:#428bca}.thumbnail>img{margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#356635}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#2d6987}.alert-warning{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.alert-warning hr{border-top-color:#f8e5be}.alert-warning .alert-link{color:#a47e3c}.alert-danger{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-danger hr{border-top-color:#e6c1c7}.alert-danger .alert-link{color:#953b39}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0}.panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.panel>.list-group .list-group-item:last-child{border-bottom:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table{margin-bottom:0}.panel>.panel-body+.table{border-top:1px solid #ddd}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-title{margin-top:0;margin-bottom:0;font-size:16px}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-warning{border-color:#fbeed5}.panel-warning>.panel-heading{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#fbeed5}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#fbeed5}.panel-danger{border-color:#eed3d7}.panel-danger>.panel-heading{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#eed3d7}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#eed3d7}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}body.modal-open,.modal-open .navbar-fixed-top,.modal-open .navbar-fixed-bottom{margin-right:15px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:auto;overflow-y:scroll}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-dialog{z-index:1050;width:auto;padding:10px;margin-right:auto;margin-left:auto}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:20px}.modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.modal-dialog{right:auto;left:50%;width:600px;padding-top:30px;padding-bottom:30px}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}}.tooltip{position:absolute;z-index:1030;display:block;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border-right-width:0}.popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;height:auto;max-width:100%;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6);opacity:.5;filter:alpha(opacity=50)}.carousel-control.left{background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.5)),to(rgba(0,0,0,0.0001)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.5) 0),color-stop(rgba(0,0,0,0.0001) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000',endColorstr='#00000000',GradientType=1)}.carousel-control.right{right:0;left:auto;background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.0001)),to(rgba(0,0,0,0.5)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.0001) 0),color-stop(rgba(0,0,0,0.5) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#80000000',GradientType=1)}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;left:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after{display:table;content:" "}.clearfix:after{clear:both}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.affix{position:fixed}@-ms-viewport{width:device-width}@media screen and (max-width:400px){@-ms-viewport{width:320px}}.hidden{display:none!important;visibility:hidden!important}.visible-xs{display:none!important}tr.visible-xs{display:none!important}th.visible-xs,td.visible-xs{display:none!important}@media(max-width:767px){.visible-xs{display:block!important}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-xs.visible-sm{display:block!important}tr.visible-xs.visible-sm{display:table-row!important}th.visible-xs.visible-sm,td.visible-xs.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-xs.visible-md{display:block!important}tr.visible-xs.visible-md{display:table-row!important}th.visible-xs.visible-md,td.visible-xs.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-xs.visible-lg{display:block!important}tr.visible-xs.visible-lg{display:table-row!important}th.visible-xs.visible-lg,td.visible-xs.visible-lg{display:table-cell!important}}.visible-sm{display:none!important}tr.visible-sm{display:none!important}th.visible-sm,td.visible-sm{display:none!important}@media(max-width:767px){.visible-sm.visible-xs{display:block!important}tr.visible-sm.visible-xs{display:table-row!important}th.visible-sm.visible-xs,td.visible-sm.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-sm{display:block!important}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-sm.visible-md{display:block!important}tr.visible-sm.visible-md{display:table-row!important}th.visible-sm.visible-md,td.visible-sm.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-sm.visible-lg{display:block!important}tr.visible-sm.visible-lg{display:table-row!important}th.visible-sm.visible-lg,td.visible-sm.visible-lg{display:table-cell!important}}.visible-md{display:none!important}tr.visible-md{display:none!important}th.visible-md,td.visible-md{display:none!important}@media(max-width:767px){.visible-md.visible-xs{display:block!important}tr.visible-md.visible-xs{display:table-row!important}th.visible-md.visible-xs,td.visible-md.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-md.visible-sm{display:block!important}tr.visible-md.visible-sm{display:table-row!important}th.visible-md.visible-sm,td.visible-md.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-md{display:block!important}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-md.visible-lg{display:block!important}tr.visible-md.visible-lg{display:table-row!important}th.visible-md.visible-lg,td.visible-md.visible-lg{display:table-cell!important}}.visible-lg{display:none!important}tr.visible-lg{display:none!important}th.visible-lg,td.visible-lg{display:none!important}@media(max-width:767px){.visible-lg.visible-xs{display:block!important}tr.visible-lg.visible-xs{display:table-row!important}th.visible-lg.visible-xs,td.visible-lg.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-lg.visible-sm{display:block!important}tr.visible-lg.visible-sm{display:table-row!important}th.visible-lg.visible-sm,td.visible-lg.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-lg.visible-md{display:block!important}tr.visible-lg.visible-md{display:table-row!important}th.visible-lg.visible-md,td.visible-lg.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-lg{display:block!important}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}.hidden-xs{display:block!important}tr.hidden-xs{display:table-row!important}th.hidden-xs,td.hidden-xs{display:table-cell!important}@media(max-width:767px){.hidden-xs{display:none!important}tr.hidden-xs{display:none!important}th.hidden-xs,td.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-xs.hidden-sm{display:none!important}tr.hidden-xs.hidden-sm{display:none!important}th.hidden-xs.hidden-sm,td.hidden-xs.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-xs.hidden-md{display:none!important}tr.hidden-xs.hidden-md{display:none!important}th.hidden-xs.hidden-md,td.hidden-xs.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-xs.hidden-lg{display:none!important}tr.hidden-xs.hidden-lg{display:none!important}th.hidden-xs.hidden-lg,td.hidden-xs.hidden-lg{display:none!important}}.hidden-sm{display:block!important}tr.hidden-sm{display:table-row!important}th.hidden-sm,td.hidden-sm{display:table-cell!important}@media(max-width:767px){.hidden-sm.hidden-xs{display:none!important}tr.hidden-sm.hidden-xs{display:none!important}th.hidden-sm.hidden-xs,td.hidden-sm.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}tr.hidden-sm{display:none!important}th.hidden-sm,td.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-sm.hidden-md{display:none!important}tr.hidden-sm.hidden-md{display:none!important}th.hidden-sm.hidden-md,td.hidden-sm.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-sm.hidden-lg{display:none!important}tr.hidden-sm.hidden-lg{display:none!important}th.hidden-sm.hidden-lg,td.hidden-sm.hidden-lg{display:none!important}}.hidden-md{display:block!important}tr.hidden-md{display:table-row!important}th.hidden-md,td.hidden-md{display:table-cell!important}@media(max-width:767px){.hidden-md.hidden-xs{display:none!important}tr.hidden-md.hidden-xs{display:none!important}th.hidden-md.hidden-xs,td.hidden-md.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-md.hidden-sm{display:none!important}tr.hidden-md.hidden-sm{display:none!important}th.hidden-md.hidden-sm,td.hidden-md.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}tr.hidden-md{display:none!important}th.hidden-md,td.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-md.hidden-lg{display:none!important}tr.hidden-md.hidden-lg{display:none!important}th.hidden-md.hidden-lg,td.hidden-md.hidden-lg{display:none!important}}.hidden-lg{display:block!important}tr.hidden-lg{display:table-row!important}th.hidden-lg,td.hidden-lg{display:table-cell!important}@media(max-width:767px){.hidden-lg.hidden-xs{display:none!important}tr.hidden-lg.hidden-xs{display:none!important}th.hidden-lg.hidden-xs,td.hidden-lg.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-lg.hidden-sm{display:none!important}tr.hidden-lg.hidden-sm{display:none!important}th.hidden-lg.hidden-sm,td.hidden-lg.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-lg.hidden-md{display:none!important}tr.hidden-lg.hidden-md{display:none!important}th.hidden-lg.hidden-md,td.hidden-lg.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-lg{display:none!important}tr.hidden-lg{display:none!important}th.hidden-lg,td.hidden-lg{display:none!important}}.visible-print{display:none!important}tr.visible-print{display:none!important}th.visible-print,td.visible-print{display:none!important}@media print{.visible-print{display:block!important}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}.hidden-print{display:none!important}tr.hidden-print{display:none!important}th.hidden-print,td.hidden-print{display:none!important}}
Binary files differ
Binary files differ
Binary files differ
  
1#swt-maker {
2}
3#img-annotation-wrapper {
4 margin: 30px auto 0 auto;
5 /*border: 1px solid black;*/
6 /*min-height: 500px;*/
7}
8#annotatable-img {
9}
10#sweet-list-wrapper {
11 width: 500px;
12 min-height: 300px;
13 position: absolute;
14 top: 33%;
15 left: 33%;
16 z-index: 100;
17 border: 1px solid #999;
18 box-shadow: 1px 1px 6px #999;
19 background-color: #FFF;
20 padding: 30px;
21 display: none;
22}
23#sweet-list {
24 margin-bottom: 10px;
25}
26.btn-grp {
27 position: relative;
28 bottom: -10%;
29 right: -10%;
30}
31#sweet {
32 display: none;
33}
34#helpview {
35 font-weight: bold;
36 font-size: 1.3em;
37 min-height: 60px;
38 text-align: center;
39}
40#app-overlay {
41 position: absolute;
42 top: 0px;
43 display: none;
44 width: 100%;
45 height: 100%;
46 z-index: 10000;
47 background-color: rgba(255, 255, 255, 0.7);
48}
  
1function $JSCompiler_alias_THROW$$($jscomp_throw_param$$) {
2 throw $jscomp_throw_param$$;
3}
4var $JSCompiler_alias_VOID$$ = void 0, $JSCompiler_alias_TRUE$$ = !0, $JSCompiler_alias_NULL$$ = null, $JSCompiler_alias_FALSE$$ = !1;
5function $JSCompiler_emptyFn$$() {
6 return function() {
7 }
8}
9function $JSCompiler_get$$($JSCompiler_get_name$$) {
10 return function() {
11 return this[$JSCompiler_get_name$$]
12 }
13}
14function $JSCompiler_returnArg$$($JSCompiler_returnArg_value$$) {
15 return function() {
16 return $JSCompiler_returnArg_value$$
17 }
18}
19var $JSCompiler_prototypeAlias$$, $goog$global$$ = this;
20function $goog$exportPath_$$($name$$57$$, $opt_object$$) {
21 var $parts$$ = $name$$57$$.split("."), $cur$$ = $goog$global$$;
22 !($parts$$[0] in $cur$$) && $cur$$.execScript && $cur$$.execScript("var " + $parts$$[0]);
23 for(var $part$$;$parts$$.length && ($part$$ = $parts$$.shift());) {
24 !$parts$$.length && $goog$isDef$$($opt_object$$) ? $cur$$[$part$$] = $opt_object$$ : $cur$$ = $cur$$[$part$$] ? $cur$$[$part$$] : $cur$$[$part$$] = {}
25 }
26}
27function $goog$nullFunction$$() {
28}
29function $goog$addSingletonGetter$$($ctor$$) {
30 $ctor$$.$getInstance$ = function $$ctor$$$$getInstance$$() {
31 return $ctor$$.$instance_$ ? $ctor$$.$instance_$ : $ctor$$.$instance_$ = new $ctor$$
32 }
33}
34function $goog$typeOf$$($value$$39$$) {
35 var $s$$2$$ = typeof $value$$39$$;
36 if("object" == $s$$2$$) {
37 if($value$$39$$) {
38 if($value$$39$$ instanceof Array) {
39 return"array"
40 }
41 if($value$$39$$ instanceof Object) {
42 return $s$$2$$
43 }
44 var $className$$1$$ = Object.prototype.toString.call($value$$39$$);
45 if("[object Window]" == $className$$1$$) {
46 return"object"
47 }
48 if("[object Array]" == $className$$1$$ || "number" == typeof $value$$39$$.length && "undefined" != typeof $value$$39$$.splice && "undefined" != typeof $value$$39$$.propertyIsEnumerable && !$value$$39$$.propertyIsEnumerable("splice")) {
49 return"array"
50 }
51 if("[object Function]" == $className$$1$$ || "undefined" != typeof $value$$39$$.call && "undefined" != typeof $value$$39$$.propertyIsEnumerable && !$value$$39$$.propertyIsEnumerable("call")) {
52 return"function"
53 }
54 }else {
55 return"null"
56 }
57 }else {
58 if("function" == $s$$2$$ && "undefined" == typeof $value$$39$$.call) {
59 return"object"
60 }
61 }
62 return $s$$2$$
63}
64function $goog$isDef$$($val$$) {
65 return $val$$ !== $JSCompiler_alias_VOID$$
66}
67function $goog$isArray$$($val$$3$$) {
68 return"array" == $goog$typeOf$$($val$$3$$)
69}
70function $goog$isArrayLike$$($val$$4$$) {
71 var $type$$50$$ = $goog$typeOf$$($val$$4$$);
72 return"array" == $type$$50$$ || "object" == $type$$50$$ && "number" == typeof $val$$4$$.length
73}
74function $goog$isString$$($val$$6$$) {
75 return"string" == typeof $val$$6$$
76}
77function $goog$isFunction$$($val$$9$$) {
78 return"function" == $goog$typeOf$$($val$$9$$)
79}
80function $goog$isObject$$($val$$10$$) {
81 var $type$$51$$ = typeof $val$$10$$;
82 return"object" == $type$$51$$ && $val$$10$$ != $JSCompiler_alias_NULL$$ || "function" == $type$$51$$
83}
84function $goog$getUid$$($obj$$17$$) {
85 return $obj$$17$$[$goog$UID_PROPERTY_$$] || ($obj$$17$$[$goog$UID_PROPERTY_$$] = ++$goog$uidCounter_$$)
86}
87var $goog$UID_PROPERTY_$$ = "closure_uid_" + Math.floor(2147483648 * Math.random()).toString(36), $goog$uidCounter_$$ = 0;
88function $goog$bindNative_$$($fn$$, $selfObj$$1$$, $var_args$$24$$) {
89 return $fn$$.call.apply($fn$$.bind, arguments)
90}
91function $goog$bindJs_$$($fn$$1$$, $selfObj$$2$$, $var_args$$25$$) {
92 $fn$$1$$ || $JSCompiler_alias_THROW$$(Error());
93 if(2 < arguments.length) {
94 var $boundArgs$$ = Array.prototype.slice.call(arguments, 2);
95 return function() {
96 var $newArgs$$ = Array.prototype.slice.call(arguments);
97 Array.prototype.unshift.apply($newArgs$$, $boundArgs$$);
98 return $fn$$1$$.apply($selfObj$$2$$, $newArgs$$)
99 }
100 }
101 return function() {
102 return $fn$$1$$.apply($selfObj$$2$$, arguments)
103 }
104}
105function $goog$bind$$($fn$$2$$, $selfObj$$3$$, $var_args$$26$$) {
106 $goog$bind$$ = Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf("native code") ? $goog$bindNative_$$ : $goog$bindJs_$$;
107 return $goog$bind$$.apply($JSCompiler_alias_NULL$$, arguments)
108}
109function $goog$partial$$($fn$$3$$, $var_args$$27$$) {
110 var $args$$ = Array.prototype.slice.call(arguments, 1);
111 return function() {
112 var $newArgs$$1$$ = Array.prototype.slice.call(arguments);
113 $newArgs$$1$$.unshift.apply($newArgs$$1$$, $args$$);
114 return $fn$$3$$.apply(this, $newArgs$$1$$)
115 }
116}
117var $goog$now$$ = Date.now || function() {
118 return+new Date
119};
120function $goog$inherits$$($childCtor$$, $parentCtor$$) {
121 function $tempCtor$$() {
122 }
123 $tempCtor$$.prototype = $parentCtor$$.prototype;
124 $childCtor$$.$superClass_$ = $parentCtor$$.prototype;
125 $childCtor$$.prototype = new $tempCtor$$;
126 $childCtor$$.prototype.constructor = $childCtor$$
127}
128;function $goog$string$trim$$($str$$25$$) {
129 return $str$$25$$.replace(/^[\s\xa0]+|[\s\xa0]+$/g, "")
130}
131function $goog$string$htmlEscape$$($str$$31$$) {
132 if(!$goog$string$allRe_$$.test($str$$31$$)) {
133 return $str$$31$$
134 }
135 -1 != $str$$31$$.indexOf("&") && ($str$$31$$ = $str$$31$$.replace($goog$string$amperRe_$$, "&amp;"));
136 -1 != $str$$31$$.indexOf("<") && ($str$$31$$ = $str$$31$$.replace($goog$string$ltRe_$$, "&lt;"));
137 -1 != $str$$31$$.indexOf(">") && ($str$$31$$ = $str$$31$$.replace($goog$string$gtRe_$$, "&gt;"));
138 -1 != $str$$31$$.indexOf('"') && ($str$$31$$ = $str$$31$$.replace($goog$string$quotRe_$$, "&quot;"));
139 return $str$$31$$
140}
141var $goog$string$amperRe_$$ = /&/g, $goog$string$ltRe_$$ = /</g, $goog$string$gtRe_$$ = />/g, $goog$string$quotRe_$$ = /\"/g, $goog$string$allRe_$$ = /[&<>\"]/;
142function $goog$string$toCamelCase$$($str$$42$$) {
143 return String($str$$42$$).replace(/\-([a-z])/g, function($all$$, $match$$) {
144 return $match$$.toUpperCase()
145 })
146}
147;var $goog$array$ARRAY_PROTOTYPE_$$ = Array.prototype, $goog$array$indexOf$$ = $goog$array$ARRAY_PROTOTYPE_$$.indexOf ? function($arr$$10$$, $obj$$21$$, $opt_fromIndex$$6$$) {
148 return $goog$array$ARRAY_PROTOTYPE_$$.indexOf.call($arr$$10$$, $obj$$21$$, $opt_fromIndex$$6$$)
149} : function($arr$$11$$, $obj$$22$$, $fromIndex_i$$12_opt_fromIndex$$7$$) {
150 $fromIndex_i$$12_opt_fromIndex$$7$$ = $fromIndex_i$$12_opt_fromIndex$$7$$ == $JSCompiler_alias_NULL$$ ? 0 : 0 > $fromIndex_i$$12_opt_fromIndex$$7$$ ? Math.max(0, $arr$$11$$.length + $fromIndex_i$$12_opt_fromIndex$$7$$) : $fromIndex_i$$12_opt_fromIndex$$7$$;
151 if($goog$isString$$($arr$$11$$)) {
152 return!$goog$isString$$($obj$$22$$) || 1 != $obj$$22$$.length ? -1 : $arr$$11$$.indexOf($obj$$22$$, $fromIndex_i$$12_opt_fromIndex$$7$$)
153 }
154 for(;$fromIndex_i$$12_opt_fromIndex$$7$$ < $arr$$11$$.length;$fromIndex_i$$12_opt_fromIndex$$7$$++) {
155 if($fromIndex_i$$12_opt_fromIndex$$7$$ in $arr$$11$$ && $arr$$11$$[$fromIndex_i$$12_opt_fromIndex$$7$$] === $obj$$22$$) {
156 return $fromIndex_i$$12_opt_fromIndex$$7$$
157 }
158 }
159 return-1
160}, $goog$array$forEach$$ = $goog$array$ARRAY_PROTOTYPE_$$.forEach ? function($arr$$14$$, $f$$, $opt_obj$$1$$) {
161 $goog$array$ARRAY_PROTOTYPE_$$.forEach.call($arr$$14$$, $f$$, $opt_obj$$1$$)
162} : function($arr$$15$$, $f$$1$$, $opt_obj$$2$$) {
163 for(var $l$$2$$ = $arr$$15$$.length, $arr2$$ = $goog$isString$$($arr$$15$$) ? $arr$$15$$.split("") : $arr$$15$$, $i$$14$$ = 0;$i$$14$$ < $l$$2$$;$i$$14$$++) {
164 $i$$14$$ in $arr2$$ && $f$$1$$.call($opt_obj$$2$$, $arr2$$[$i$$14$$], $i$$14$$, $arr$$15$$)
165 }
166}, $goog$array$filter$$ = $goog$array$ARRAY_PROTOTYPE_$$.filter ? function($arr$$17$$, $f$$3$$, $opt_obj$$4$$) {
167 return $goog$array$ARRAY_PROTOTYPE_$$.filter.call($arr$$17$$, $f$$3$$, $opt_obj$$4$$)
168} : function($arr$$18$$, $f$$4$$, $opt_obj$$5$$) {
169 for(var $l$$4$$ = $arr$$18$$.length, $res$$ = [], $resLength$$ = 0, $arr2$$2$$ = $goog$isString$$($arr$$18$$) ? $arr$$18$$.split("") : $arr$$18$$, $i$$16$$ = 0;$i$$16$$ < $l$$4$$;$i$$16$$++) {
170 if($i$$16$$ in $arr2$$2$$) {
171 var $val$$11$$ = $arr2$$2$$[$i$$16$$];
172 $f$$4$$.call($opt_obj$$5$$, $val$$11$$, $i$$16$$, $arr$$18$$) && ($res$$[$resLength$$++] = $val$$11$$)
173 }
174 }
175 return $res$$
176}, $goog$array$map$$ = $goog$array$ARRAY_PROTOTYPE_$$.map ? function($arr$$19$$, $f$$5$$, $opt_obj$$6$$) {
177 return $goog$array$ARRAY_PROTOTYPE_$$.map.call($arr$$19$$, $f$$5$$, $opt_obj$$6$$)
178} : function($arr$$20$$, $f$$6$$, $opt_obj$$7$$) {
179 for(var $l$$5$$ = $arr$$20$$.length, $res$$1$$ = Array($l$$5$$), $arr2$$3$$ = $goog$isString$$($arr$$20$$) ? $arr$$20$$.split("") : $arr$$20$$, $i$$17$$ = 0;$i$$17$$ < $l$$5$$;$i$$17$$++) {
180 $i$$17$$ in $arr2$$3$$ && ($res$$1$$[$i$$17$$] = $f$$6$$.call($opt_obj$$7$$, $arr2$$3$$[$i$$17$$], $i$$17$$, $arr$$20$$))
181 }
182 return $res$$1$$
183}, $goog$array$every$$ = $goog$array$ARRAY_PROTOTYPE_$$.every ? function($arr$$25$$, $f$$11$$, $opt_obj$$12$$) {
184 return $goog$array$ARRAY_PROTOTYPE_$$.every.call($arr$$25$$, $f$$11$$, $opt_obj$$12$$)
185} : function($arr$$26$$, $f$$12$$, $opt_obj$$13$$) {
186 for(var $l$$7$$ = $arr$$26$$.length, $arr2$$5$$ = $goog$isString$$($arr$$26$$) ? $arr$$26$$.split("") : $arr$$26$$, $i$$19$$ = 0;$i$$19$$ < $l$$7$$;$i$$19$$++) {
187 if($i$$19$$ in $arr2$$5$$ && !$f$$12$$.call($opt_obj$$13$$, $arr2$$5$$[$i$$19$$], $i$$19$$, $arr$$26$$)) {
188 return $JSCompiler_alias_FALSE$$
189 }
190 }
191 return $JSCompiler_alias_TRUE$$
192};
193function $goog$array$find$$($arr$$27$$, $f$$13$$) {
194 var $i$$20_l$$inline_64$$;
195 a: {
196 $i$$20_l$$inline_64$$ = $arr$$27$$.length;
197 for(var $arr2$$inline_65$$ = $goog$isString$$($arr$$27$$) ? $arr$$27$$.split("") : $arr$$27$$, $i$$inline_66$$ = 0;$i$$inline_66$$ < $i$$20_l$$inline_64$$;$i$$inline_66$$++) {
198 if($i$$inline_66$$ in $arr2$$inline_65$$ && $f$$13$$.call($JSCompiler_alias_VOID$$, $arr2$$inline_65$$[$i$$inline_66$$], $i$$inline_66$$, $arr$$27$$)) {
199 $i$$20_l$$inline_64$$ = $i$$inline_66$$;
200 break a
201 }
202 }
203 $i$$20_l$$inline_64$$ = -1
204 }
205 return 0 > $i$$20_l$$inline_64$$ ? $JSCompiler_alias_NULL$$ : $goog$isString$$($arr$$27$$) ? $arr$$27$$.charAt($i$$20_l$$inline_64$$) : $arr$$27$$[$i$$20_l$$inline_64$$]
206}
207function $goog$array$contains$$($arr$$31$$, $obj$$25$$) {
208 return 0 <= $goog$array$indexOf$$($arr$$31$$, $obj$$25$$)
209}
210function $goog$array$remove$$($arr$$38$$, $obj$$29$$) {
211 var $i$$26$$ = $goog$array$indexOf$$($arr$$38$$, $obj$$29$$);
212 0 <= $i$$26$$ && $goog$array$ARRAY_PROTOTYPE_$$.splice.call($arr$$38$$, $i$$26$$, 1)
213}
214function $goog$array$toArray$$($object$$2$$) {
215 var $length$$15$$ = $object$$2$$.length;
216 if(0 < $length$$15$$) {
217 for(var $rv$$3$$ = Array($length$$15$$), $i$$29$$ = 0;$i$$29$$ < $length$$15$$;$i$$29$$++) {
218 $rv$$3$$[$i$$29$$] = $object$$2$$[$i$$29$$]
219 }
220 return $rv$$3$$
221 }
222 return[]
223}
224function $goog$array$extend$$($arr1$$, $var_args$$41$$) {
225 for(var $i$$30$$ = 1;$i$$30$$ < arguments.length;$i$$30$$++) {
226 var $arr2$$8$$ = arguments[$i$$30$$], $isArrayLike$$;
227 if($goog$isArray$$($arr2$$8$$) || ($isArrayLike$$ = $goog$isArrayLike$$($arr2$$8$$)) && $arr2$$8$$.hasOwnProperty("callee")) {
228 $arr1$$.push.apply($arr1$$, $arr2$$8$$)
229 }else {
230 if($isArrayLike$$) {
231 for(var $len1$$ = $arr1$$.length, $len2$$ = $arr2$$8$$.length, $j$$1$$ = 0;$j$$1$$ < $len2$$;$j$$1$$++) {
232 $arr1$$[$len1$$ + $j$$1$$] = $arr2$$8$$[$j$$1$$]
233 }
234 }else {
235 $arr1$$.push($arr2$$8$$)
236 }
237 }
238 }
239}
240function $goog$array$slice$$($arr$$42$$, $start$$5$$, $opt_end$$13$$) {
241 return 2 >= arguments.length ? $goog$array$ARRAY_PROTOTYPE_$$.slice.call($arr$$42$$, $start$$5$$) : $goog$array$ARRAY_PROTOTYPE_$$.slice.call($arr$$42$$, $start$$5$$, $opt_end$$13$$)
242}
243function $goog$array$defaultCompare$$($a$$3$$, $b$$2$$) {
244 return $a$$3$$ > $b$$2$$ ? 1 : $a$$3$$ < $b$$2$$ ? -1 : 0
245}
246;var $goog$userAgent$detectedOpera_$$, $goog$userAgent$detectedIe_$$, $goog$userAgent$detectedWebkit_$$, $goog$userAgent$detectedGecko_$$, $goog$userAgent$detectedMac_$$;
247function $goog$userAgent$getUserAgentString$$() {
248 return $goog$global$$.navigator ? $goog$global$$.navigator.userAgent : $JSCompiler_alias_NULL$$
249}
250function $goog$userAgent$getNavigator$$() {
251 return $goog$global$$.navigator
252}
253$goog$userAgent$detectedGecko_$$ = $goog$userAgent$detectedWebkit_$$ = $goog$userAgent$detectedIe_$$ = $goog$userAgent$detectedOpera_$$ = $JSCompiler_alias_FALSE$$;
254var $ua$$inline_71$$;
255if($ua$$inline_71$$ = $goog$userAgent$getUserAgentString$$()) {
256 var $navigator$$inline_72$$ = $goog$userAgent$getNavigator$$();
257 $goog$userAgent$detectedOpera_$$ = 0 == $ua$$inline_71$$.indexOf("Opera");
258 $goog$userAgent$detectedIe_$$ = !$goog$userAgent$detectedOpera_$$ && -1 != $ua$$inline_71$$.indexOf("MSIE");
259 $goog$userAgent$detectedWebkit_$$ = !$goog$userAgent$detectedOpera_$$ && -1 != $ua$$inline_71$$.indexOf("WebKit");
260 $goog$userAgent$detectedGecko_$$ = !$goog$userAgent$detectedOpera_$$ && !$goog$userAgent$detectedWebkit_$$ && "Gecko" == $navigator$$inline_72$$.product
261}
262var $goog$userAgent$OPERA$$ = $goog$userAgent$detectedOpera_$$, $goog$userAgent$IE$$ = $goog$userAgent$detectedIe_$$, $goog$userAgent$GECKO$$ = $goog$userAgent$detectedGecko_$$, $goog$userAgent$WEBKIT$$ = $goog$userAgent$detectedWebkit_$$, $navigator$$inline_74$$ = $goog$userAgent$getNavigator$$();
263$goog$userAgent$detectedMac_$$ = -1 != ($navigator$$inline_74$$ && $navigator$$inline_74$$.platform || "").indexOf("Mac");
264var $goog$userAgent$X11$$ = !!$goog$userAgent$getNavigator$$() && -1 != ($goog$userAgent$getNavigator$$().appVersion || "").indexOf("X11"), $goog$userAgent$VERSION$$;
265a: {
266 var $version$$inline_77$$ = "", $re$$inline_78$$;
267 if($goog$userAgent$OPERA$$ && $goog$global$$.opera) {
268 var $operaVersion$$inline_79$$ = $goog$global$$.opera.version, $version$$inline_77$$ = "function" == typeof $operaVersion$$inline_79$$ ? $operaVersion$$inline_79$$() : $operaVersion$$inline_79$$
269 }else {
270 if($goog$userAgent$GECKO$$ ? $re$$inline_78$$ = /rv\:([^\);]+)(\)|;)/ : $goog$userAgent$IE$$ ? $re$$inline_78$$ = /MSIE\s+([^\);]+)(\)|;)/ : $goog$userAgent$WEBKIT$$ && ($re$$inline_78$$ = /WebKit\/(\S+)/), $re$$inline_78$$) {
271 var $arr$$inline_80$$ = $re$$inline_78$$.exec($goog$userAgent$getUserAgentString$$()), $version$$inline_77$$ = $arr$$inline_80$$ ? $arr$$inline_80$$[1] : ""
272 }
273 }
274 if($goog$userAgent$IE$$) {
275 var $docMode$$inline_81$$, $doc$$inline_802$$ = $goog$global$$.document;
276 $docMode$$inline_81$$ = $doc$$inline_802$$ ? $doc$$inline_802$$.documentMode : $JSCompiler_alias_VOID$$;
277 if($docMode$$inline_81$$ > parseFloat($version$$inline_77$$)) {
278 $goog$userAgent$VERSION$$ = String($docMode$$inline_81$$);
279 break a
280 }
281 }
282 $goog$userAgent$VERSION$$ = $version$$inline_77$$
283}
284var $goog$userAgent$isVersionCache_$$ = {};
285function $goog$userAgent$isVersion$$($version$$8$$) {
286 var $JSCompiler_temp$$55_order$$inline_85$$;
287 if(!($JSCompiler_temp$$55_order$$inline_85$$ = $goog$userAgent$isVersionCache_$$[$version$$8$$])) {
288 $JSCompiler_temp$$55_order$$inline_85$$ = 0;
289 for(var $v1Subs$$inline_86$$ = $goog$string$trim$$(String($goog$userAgent$VERSION$$)).split("."), $v2Subs$$inline_87$$ = $goog$string$trim$$(String($version$$8$$)).split("."), $subCount$$inline_88$$ = Math.max($v1Subs$$inline_86$$.length, $v2Subs$$inline_87$$.length), $subIdx$$inline_89$$ = 0;0 == $JSCompiler_temp$$55_order$$inline_85$$ && $subIdx$$inline_89$$ < $subCount$$inline_88$$;$subIdx$$inline_89$$++) {
290 var $v1Sub$$inline_90$$ = $v1Subs$$inline_86$$[$subIdx$$inline_89$$] || "", $v2Sub$$inline_91$$ = $v2Subs$$inline_87$$[$subIdx$$inline_89$$] || "", $v1CompParser$$inline_92$$ = RegExp("(\\d*)(\\D*)", "g"), $v2CompParser$$inline_93$$ = RegExp("(\\d*)(\\D*)", "g");
291 do {
292 var $v1Comp$$inline_94$$ = $v1CompParser$$inline_92$$.exec($v1Sub$$inline_90$$) || ["", "", ""], $v2Comp$$inline_95$$ = $v2CompParser$$inline_93$$.exec($v2Sub$$inline_91$$) || ["", "", ""];
293 if(0 == $v1Comp$$inline_94$$[0].length && 0 == $v2Comp$$inline_95$$[0].length) {
294 break
295 }
296 $JSCompiler_temp$$55_order$$inline_85$$ = ((0 == $v1Comp$$inline_94$$[1].length ? 0 : parseInt($v1Comp$$inline_94$$[1], 10)) < (0 == $v2Comp$$inline_95$$[1].length ? 0 : parseInt($v2Comp$$inline_95$$[1], 10)) ? -1 : (0 == $v1Comp$$inline_94$$[1].length ? 0 : parseInt($v1Comp$$inline_94$$[1], 10)) > (0 == $v2Comp$$inline_95$$[1].length ? 0 : parseInt($v2Comp$$inline_95$$[1], 10)) ? 1 : 0) || ((0 == $v1Comp$$inline_94$$[2].length) < (0 == $v2Comp$$inline_95$$[2].length) ? -1 : (0 == $v1Comp$$inline_94$$[2].length) >
297 (0 == $v2Comp$$inline_95$$[2].length) ? 1 : 0) || ($v1Comp$$inline_94$$[2] < $v2Comp$$inline_95$$[2] ? -1 : $v1Comp$$inline_94$$[2] > $v2Comp$$inline_95$$[2] ? 1 : 0)
298 }while(0 == $JSCompiler_temp$$55_order$$inline_85$$)
299 }
300 $JSCompiler_temp$$55_order$$inline_85$$ = $goog$userAgent$isVersionCache_$$[$version$$8$$] = 0 <= $JSCompiler_temp$$55_order$$inline_85$$
301 }
302 return $JSCompiler_temp$$55_order$$inline_85$$
303}
304var $goog$userAgent$isDocumentModeCache_$$ = {};
305function $goog$userAgent$isDocumentMode$$($documentMode$$) {
306 return $goog$userAgent$isDocumentModeCache_$$[$documentMode$$] || ($goog$userAgent$isDocumentModeCache_$$[$documentMode$$] = $goog$userAgent$IE$$ && !!document.documentMode && document.documentMode >= $documentMode$$)
307}
308;var $goog$dom$defaultDomHelper_$$, $goog$dom$BrowserFeature$CAN_ADD_NAME_OR_TYPE_ATTRIBUTES$$ = !$goog$userAgent$IE$$ || $goog$userAgent$isDocumentMode$$(9);
309!$goog$userAgent$GECKO$$ && !$goog$userAgent$IE$$ || $goog$userAgent$IE$$ && $goog$userAgent$isDocumentMode$$(9) || $goog$userAgent$GECKO$$ && $goog$userAgent$isVersion$$("1.9.1");
310$goog$userAgent$IE$$ && $goog$userAgent$isVersion$$("9");
311var $goog$dom$BrowserFeature$CAN_USE_PARENT_ELEMENT_PROPERTY$$ = $goog$userAgent$IE$$ || $goog$userAgent$OPERA$$ || $goog$userAgent$WEBKIT$$;
312function $goog$dom$classes$get$$($className$$4_element$$7$$) {
313 $className$$4_element$$7$$ = $className$$4_element$$7$$.className;
314 return $goog$isString$$($className$$4_element$$7$$) && $className$$4_element$$7$$.match(/\S+/g) || []
315}
316function $goog$dom$classes$add$$($element$$8$$, $var_args$$45$$) {
317 var $classes$$ = $goog$dom$classes$get$$($element$$8$$), $args$$3$$ = $goog$array$slice$$(arguments, 1), $expectedCount$$ = $classes$$.length + $args$$3$$.length;
318 $goog$dom$classes$add_$$($classes$$, $args$$3$$);
319 $element$$8$$.className = $classes$$.join(" ");
320 return $classes$$.length == $expectedCount$$
321}
322function $goog$dom$classes$remove$$($element$$9$$, $var_args$$46$$) {
323 var $classes$$1$$ = $goog$dom$classes$get$$($element$$9$$), $args$$4$$ = $goog$array$slice$$(arguments, 1), $newClasses$$ = $goog$dom$classes$getDifference_$$($classes$$1$$, $args$$4$$);
324 $element$$9$$.className = $newClasses$$.join(" ");
325 return $newClasses$$.length == $classes$$1$$.length - $args$$4$$.length
326}
327function $goog$dom$classes$add_$$($classes$$2$$, $args$$5$$) {
328 for(var $i$$40$$ = 0;$i$$40$$ < $args$$5$$.length;$i$$40$$++) {
329 $goog$array$contains$$($classes$$2$$, $args$$5$$[$i$$40$$]) || $classes$$2$$.push($args$$5$$[$i$$40$$])
330 }
331}
332function $goog$dom$classes$getDifference_$$($arr1$$4$$, $arr2$$12$$) {
333 return $goog$array$filter$$($arr1$$4$$, function($item$$) {
334 return!$goog$array$contains$$($arr2$$12$$, $item$$)
335 })
336}
337function $goog$dom$classes$addRemove$$($element$$11$$, $classesToRemove$$, $classesToAdd$$) {
338 var $classes$$4$$ = $goog$dom$classes$get$$($element$$11$$);
339 $goog$isString$$($classesToRemove$$) ? $goog$array$remove$$($classes$$4$$, $classesToRemove$$) : $goog$isArray$$($classesToRemove$$) && ($classes$$4$$ = $goog$dom$classes$getDifference_$$($classes$$4$$, $classesToRemove$$));
340 $goog$isString$$($classesToAdd$$) && !$goog$array$contains$$($classes$$4$$, $classesToAdd$$) ? $classes$$4$$.push($classesToAdd$$) : $goog$isArray$$($classesToAdd$$) && $goog$dom$classes$add_$$($classes$$4$$, $classesToAdd$$);
341 $element$$11$$.className = $classes$$4$$.join(" ")
342}
343;function $goog$math$Coordinate$$($opt_x$$, $opt_y$$) {
344 this.x = $goog$isDef$$($opt_x$$) ? $opt_x$$ : 0;
345 this.y = $goog$isDef$$($opt_y$$) ? $opt_y$$ : 0
346}
347;function $goog$math$Size$$($width$$12$$, $height$$11$$) {
348 this.width = $width$$12$$;
349 this.height = $height$$11$$
350}
351$goog$math$Size$$.prototype.floor = function $$goog$math$Size$$$$floor$() {
352 this.width = Math.floor(this.width);
353 this.height = Math.floor(this.height);
354 return this
355};
356$goog$math$Size$$.prototype.round = function $$goog$math$Size$$$$round$() {
357 this.width = Math.round(this.width);
358 this.height = Math.round(this.height);
359 return this
360};
361function $goog$object$forEach$$($obj$$30$$, $f$$18$$) {
362 for(var $key$$18$$ in $obj$$30$$) {
363 $f$$18$$.call($JSCompiler_alias_VOID$$, $obj$$30$$[$key$$18$$], $key$$18$$, $obj$$30$$)
364 }
365}
366var $goog$object$PROTOTYPE_FIELDS_$$ = "constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");
367function $goog$object$extend$$($target$$42$$, $var_args$$51$$) {
368 for(var $key$$41$$, $source$$2$$, $i$$47$$ = 1;$i$$47$$ < arguments.length;$i$$47$$++) {
369 $source$$2$$ = arguments[$i$$47$$];
370 for($key$$41$$ in $source$$2$$) {
371 $target$$42$$[$key$$41$$] = $source$$2$$[$key$$41$$]
372 }
373 for(var $j$$5$$ = 0;$j$$5$$ < $goog$object$PROTOTYPE_FIELDS_$$.length;$j$$5$$++) {
374 $key$$41$$ = $goog$object$PROTOTYPE_FIELDS_$$[$j$$5$$], Object.prototype.hasOwnProperty.call($source$$2$$, $key$$41$$) && ($target$$42$$[$key$$41$$] = $source$$2$$[$key$$41$$])
375 }
376 }
377}
378;function $goog$dom$getDomHelper$$($opt_element$$10$$) {
379 return $opt_element$$10$$ ? new $goog$dom$DomHelper$$($goog$dom$getOwnerDocument$$($opt_element$$10$$)) : $goog$dom$defaultDomHelper_$$ || ($goog$dom$defaultDomHelper_$$ = new $goog$dom$DomHelper$$)
380}
381function $goog$dom$setProperties$$($element$$16$$, $properties$$) {
382 $goog$object$forEach$$($properties$$, function($val$$20$$, $key$$42$$) {
383 "style" == $key$$42$$ ? $element$$16$$.style.cssText = $val$$20$$ : "class" == $key$$42$$ ? $element$$16$$.className = $val$$20$$ : "for" == $key$$42$$ ? $element$$16$$.htmlFor = $val$$20$$ : $key$$42$$ in $goog$dom$DIRECT_ATTRIBUTE_MAP_$$ ? $element$$16$$.setAttribute($goog$dom$DIRECT_ATTRIBUTE_MAP_$$[$key$$42$$], $val$$20$$) : 0 == $key$$42$$.lastIndexOf("aria-", 0) || 0 == $key$$42$$.lastIndexOf("data-", 0) ? $element$$16$$.setAttribute($key$$42$$, $val$$20$$) : $element$$16$$[$key$$42$$] =
384 $val$$20$$
385 })
386}
387var $goog$dom$DIRECT_ATTRIBUTE_MAP_$$ = {cellpadding:"cellPadding", cellspacing:"cellSpacing", colspan:"colSpan", frameborder:"frameBorder", height:"height", maxlength:"maxLength", role:"role", rowspan:"rowSpan", type:"type", usemap:"useMap", valign:"vAlign", width:"width"};
388function $goog$dom$createDom$$($tagName$$2$$, $opt_attributes$$, $var_args$$54$$) {
389 var $args$$inline_101$$ = arguments, $doc$$inline_102$$ = document, $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$ = $args$$inline_101$$[0], $attributes$$inline_104$$ = $args$$inline_101$$[1];
390 if(!$goog$dom$BrowserFeature$CAN_ADD_NAME_OR_TYPE_ATTRIBUTES$$ && $attributes$$inline_104$$ && ($attributes$$inline_104$$.name || $attributes$$inline_104$$.type)) {
391 $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$ = ["<", $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$];
392 $attributes$$inline_104$$.name && $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$.push(' name="', $goog$string$htmlEscape$$($attributes$$inline_104$$.name), '"');
393 if($attributes$$inline_104$$.type) {
394 $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$.push(' type="', $goog$string$htmlEscape$$($attributes$$inline_104$$.type), '"');
395 var $clone$$inline_106$$ = {};
396 $goog$object$extend$$($clone$$inline_106$$, $attributes$$inline_104$$);
397 delete $clone$$inline_106$$.type;
398 $attributes$$inline_104$$ = $clone$$inline_106$$
399 }
400 $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$.push(">");
401 $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$ = $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$.join("")
402 }
403 $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$ = $doc$$inline_102$$.createElement($element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$);
404 $attributes$$inline_104$$ && ($goog$isString$$($attributes$$inline_104$$) ? $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$.className = $attributes$$inline_104$$ : $goog$isArray$$($attributes$$inline_104$$) ? $goog$dom$classes$add$$.apply($JSCompiler_alias_NULL$$, [$element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$].concat($attributes$$inline_104$$)) : $goog$dom$setProperties$$($element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$, $attributes$$inline_104$$));
405 2 < $args$$inline_101$$.length && $goog$dom$append_$$($doc$$inline_102$$, $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$, $args$$inline_101$$, 2);
406 return $element$$inline_107_tagName$$inline_103_tagNameArr$$inline_105$$
407}
408function $goog$dom$append_$$($doc$$12$$, $parent$$6$$, $args$$7$$, $i$$51_startIndex$$) {
409 function $childHandler$$($child$$1$$) {
410 $child$$1$$ && $parent$$6$$.appendChild($goog$isString$$($child$$1$$) ? $doc$$12$$.createTextNode($child$$1$$) : $child$$1$$)
411 }
412 for(;$i$$51_startIndex$$ < $args$$7$$.length;$i$$51_startIndex$$++) {
413 var $arg$$5$$ = $args$$7$$[$i$$51_startIndex$$];
414 if($goog$isArrayLike$$($arg$$5$$) && !($goog$isObject$$($arg$$5$$) && 0 < $arg$$5$$.nodeType)) {
415 var $JSCompiler_inline_result$$7$$;
416 a: {
417 if($arg$$5$$ && "number" == typeof $arg$$5$$.length) {
418 if($goog$isObject$$($arg$$5$$)) {
419 $JSCompiler_inline_result$$7$$ = "function" == typeof $arg$$5$$.item || "string" == typeof $arg$$5$$.item;
420 break a
421 }
422 if($goog$isFunction$$($arg$$5$$)) {
423 $JSCompiler_inline_result$$7$$ = "function" == typeof $arg$$5$$.item;
424 break a
425 }
426 }
427 $JSCompiler_inline_result$$7$$ = $JSCompiler_alias_FALSE$$
428 }
429 $goog$array$forEach$$($JSCompiler_inline_result$$7$$ ? $goog$array$toArray$$($arg$$5$$) : $arg$$5$$, $childHandler$$)
430 }else {
431 $childHandler$$($arg$$5$$)
432 }
433 }
434}
435function $goog$dom$removeChildren$$($node$$3$$) {
436 for(var $child$$3$$;$child$$3$$ = $node$$3$$.firstChild;) {
437 $node$$3$$.removeChild($child$$3$$)
438 }
439}
440function $goog$dom$removeNode$$($node$$4$$) {
441 $node$$4$$ && $node$$4$$.parentNode && $node$$4$$.parentNode.removeChild($node$$4$$)
442}
443function $goog$dom$isElement$$($obj$$59$$) {
444 return $goog$isObject$$($obj$$59$$) && 1 == $obj$$59$$.nodeType
445}
446function $goog$dom$contains$$($parent$$13$$, $descendant$$) {
447 if($parent$$13$$.contains && 1 == $descendant$$.nodeType) {
448 return $parent$$13$$ == $descendant$$ || $parent$$13$$.contains($descendant$$)
449 }
450 if("undefined" != typeof $parent$$13$$.compareDocumentPosition) {
451 return $parent$$13$$ == $descendant$$ || Boolean($parent$$13$$.compareDocumentPosition($descendant$$) & 16)
452 }
453 for(;$descendant$$ && $parent$$13$$ != $descendant$$;) {
454 $descendant$$ = $descendant$$.parentNode
455 }
456 return $descendant$$ == $parent$$13$$
457}
458function $goog$dom$getOwnerDocument$$($node$$15$$) {
459 return 9 == $node$$15$$.nodeType ? $node$$15$$ : $node$$15$$.ownerDocument || $node$$15$$.document
460}
461function $goog$dom$isFocusableTabIndex$$($element$$23_index$$53$$) {
462 var $attrNode$$ = $element$$23_index$$53$$.getAttributeNode("tabindex");
463 return $attrNode$$ && $attrNode$$.specified ? ($element$$23_index$$53$$ = $element$$23_index$$53$$.tabIndex, "number" == typeof $element$$23_index$$53$$ && 0 <= $element$$23_index$$53$$ && 32768 > $element$$23_index$$53$$) : $JSCompiler_alias_FALSE$$
464}
465function $goog$dom$DomHelper$$($opt_document$$) {
466 this.$document_$ = $opt_document$$ || $goog$global$$.document || document
467}
468$JSCompiler_prototypeAlias$$ = $goog$dom$DomHelper$$.prototype;
469$JSCompiler_prototypeAlias$$.$getDomHelper$ = $goog$dom$getDomHelper$$;
470$JSCompiler_prototypeAlias$$.$getElement$ = function $$JSCompiler_prototypeAlias$$$$getElement$$($element$$28$$) {
471 return $goog$isString$$($element$$28$$) ? this.$document_$.getElementById($element$$28$$) : $element$$28$$
472};
473$JSCompiler_prototypeAlias$$.$setProperties$ = $goog$dom$setProperties$$;
474$JSCompiler_prototypeAlias$$.createElement = function $$JSCompiler_prototypeAlias$$$createElement$($name$$61$$) {
475 return this.$document_$.createElement($name$$61$$)
476};
477$JSCompiler_prototypeAlias$$.createTextNode = function $$JSCompiler_prototypeAlias$$$createTextNode$($content$$1$$) {
478 return this.$document_$.createTextNode($content$$1$$)
479};
480function $JSCompiler_StaticMethods_getDocumentScroll$$($JSCompiler_StaticMethods_getDocumentScroll$self_el$$inline_112$$) {
481 var $doc$$inline_111_win$$inline_113$$ = $JSCompiler_StaticMethods_getDocumentScroll$self_el$$inline_112$$.$document_$, $JSCompiler_StaticMethods_getDocumentScroll$self_el$$inline_112$$ = !$goog$userAgent$WEBKIT$$ ? $doc$$inline_111_win$$inline_113$$.documentElement : $doc$$inline_111_win$$inline_113$$.body, $doc$$inline_111_win$$inline_113$$ = $doc$$inline_111_win$$inline_113$$.parentWindow || $doc$$inline_111_win$$inline_113$$.defaultView;
482 return new $goog$math$Coordinate$$($doc$$inline_111_win$$inline_113$$.pageXOffset || $JSCompiler_StaticMethods_getDocumentScroll$self_el$$inline_112$$.scrollLeft, $doc$$inline_111_win$$inline_113$$.pageYOffset || $JSCompiler_StaticMethods_getDocumentScroll$self_el$$inline_112$$.scrollTop)
483}
484$JSCompiler_prototypeAlias$$.appendChild = function $$JSCompiler_prototypeAlias$$$appendChild$($parent$$7$$, $child$$2$$) {
485 $parent$$7$$.appendChild($child$$2$$)
486};
487$JSCompiler_prototypeAlias$$.append = function $$JSCompiler_prototypeAlias$$$append$($parent$$8$$, $var_args$$55$$) {
488 $goog$dom$append_$$($goog$dom$getOwnerDocument$$($parent$$8$$), $parent$$8$$, arguments, 1)
489};
490$JSCompiler_prototypeAlias$$.contains = $goog$dom$contains$$;
491var $goog$functions$TRUE$$;
492$goog$functions$TRUE$$ = $JSCompiler_returnArg$$($JSCompiler_alias_TRUE$$);
493/*
494 Portions of this code are from the Dojo Toolkit, received by
495 The Closure Library Authors under the BSD license. All other code is
496 Copyright 2005-2009 The Closure Library Authors. All Rights Reserved.
497
498The "New" BSD License:
499
500Copyright (c) 2005-2009, The Dojo Foundation
501All rights reserved.
502
503Redistribution and use in source and binary forms, with or without
504modification, are permitted provided that the following conditions are met:
505
506 Redistributions of source code must retain the above copyright notice, this
507 list of conditions and the following disclaimer.
508 Redistributions in binary form must reproduce the above copyright notice,
509 this list of conditions and the following disclaimer in the documentation
510 and/or other materials provided with the distribution.
511 Neither the name of the Dojo Foundation nor the names of its contributors
512 may be used to endorse or promote products derived from this software
513 without specific prior written permission.
514
515THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
516ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
517WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
518DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
519FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
520DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
521SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
522CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
523OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
524OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
525*/
526function $getArr$$inline_117$$($i$$inline_155$$, $opt_arr$$inline_156$$) {
527 var $r$$inline_157$$ = $opt_arr$$inline_156$$ || [];
528 $i$$inline_155$$ && $r$$inline_157$$.push($i$$inline_155$$);
529 return $r$$inline_157$$
530}
531var $cssCaseBug$$inline_118$$ = $goog$userAgent$WEBKIT$$ && "BackCompat" == document.compatMode, $childNodesName$$inline_119$$ = document.firstChild.children ? "children" : "childNodes", $caseSensitive$$inline_120$$ = $JSCompiler_alias_FALSE$$;
532function $getQueryParts$$inline_121$$($query$$inline_158$$) {
533 function $endAll$$inline_178$$() {
534 0 <= $inId$$inline_166$$ && ($currentPart$$inline_173$$.id = $ts$$inline_159$$($inId$$inline_166$$, $x$$inline_171$$).replace(/\\/g, ""), $inId$$inline_166$$ = -1);
535 if(0 <= $inTag$$inline_167$$) {
536 var $tv$$inline_805$$ = $inTag$$inline_167$$ == $x$$inline_171$$ ? $JSCompiler_alias_NULL$$ : $ts$$inline_159$$($inTag$$inline_167$$, $x$$inline_171$$);
537 0 > ">~+".indexOf($tv$$inline_805$$) ? $currentPart$$inline_173$$.$tag$ = $tv$$inline_805$$ : $currentPart$$inline_173$$.$oper$ = $tv$$inline_805$$;
538 $inTag$$inline_167$$ = -1
539 }
540 0 <= $inClass$$inline_165$$ && ($currentPart$$inline_173$$.$classes$.push($ts$$inline_159$$($inClass$$inline_165$$ + 1, $x$$inline_171$$).replace(/\\/g, "")), $inClass$$inline_165$$ = -1)
541 }
542 function $ts$$inline_159$$($s$$inline_182$$, $e$$inline_183$$) {
543 return $goog$string$trim$$($query$$inline_158$$.slice($s$$inline_182$$, $e$$inline_183$$))
544 }
545 for(var $query$$inline_158$$ = 0 <= ">~+".indexOf($query$$inline_158$$.slice(-1)) ? $query$$inline_158$$ + " * " : $query$$inline_158$$ + " ", $queryParts$$inline_160$$ = [], $cmf$$inline_180_inBrackets$$inline_161$$ = -1, $inParens$$inline_162$$ = -1, $addToCc$$inline_181_inMatchFor$$inline_163$$ = -1, $inPseudo$$inline_164$$ = -1, $inClass$$inline_165$$ = -1, $inId$$inline_166$$ = -1, $inTag$$inline_167$$ = -1, $lc$$inline_168$$ = "", $cc$$inline_169$$ = "", $pStart$$inline_170$$, $x$$inline_171$$ =
546 0, $ql$$inline_172$$ = $query$$inline_158$$.length, $currentPart$$inline_173$$ = $JSCompiler_alias_NULL$$, $cp$$inline_174$$ = $JSCompiler_alias_NULL$$;$lc$$inline_168$$ = $cc$$inline_169$$, $cc$$inline_169$$ = $query$$inline_158$$.charAt($x$$inline_171$$), $x$$inline_171$$ < $ql$$inline_172$$;$x$$inline_171$$++) {
547 if("\\" != $lc$$inline_168$$) {
548 if($currentPart$$inline_173$$ || ($pStart$$inline_170$$ = $x$$inline_171$$, $currentPart$$inline_173$$ = {$query$:$JSCompiler_alias_NULL$$, $pseudos$:[], $attrs$:[], $classes$:[], $tag$:$JSCompiler_alias_NULL$$, $oper$:$JSCompiler_alias_NULL$$, id:$JSCompiler_alias_NULL$$, $getTag$:function $$currentPart$$inline_173$$$$getTag$$() {
549 return $caseSensitive$$inline_120$$ ? this.$otag$ : this.$tag$
550 }}, $inTag$$inline_167$$ = $x$$inline_171$$), 0 <= $cmf$$inline_180_inBrackets$$inline_161$$) {
551 if("]" == $cc$$inline_169$$) {
552 $cp$$inline_174$$.$attr$ ? $cp$$inline_174$$.$matchFor$ = $ts$$inline_159$$($addToCc$$inline_181_inMatchFor$$inline_163$$ || $cmf$$inline_180_inBrackets$$inline_161$$ + 1, $x$$inline_171$$) : $cp$$inline_174$$.$attr$ = $ts$$inline_159$$($cmf$$inline_180_inBrackets$$inline_161$$ + 1, $x$$inline_171$$);
553 if(($cmf$$inline_180_inBrackets$$inline_161$$ = $cp$$inline_174$$.$matchFor$) && ('"' == $cmf$$inline_180_inBrackets$$inline_161$$.charAt(0) || "'" == $cmf$$inline_180_inBrackets$$inline_161$$.charAt(0))) {
554 $cp$$inline_174$$.$matchFor$ = $cmf$$inline_180_inBrackets$$inline_161$$.slice(1, -1)
555 }
556 $currentPart$$inline_173$$.$attrs$.push($cp$$inline_174$$);
557 $cp$$inline_174$$ = $JSCompiler_alias_NULL$$;
558 $cmf$$inline_180_inBrackets$$inline_161$$ = $addToCc$$inline_181_inMatchFor$$inline_163$$ = -1
559 }else {
560 "=" == $cc$$inline_169$$ && ($addToCc$$inline_181_inMatchFor$$inline_163$$ = 0 <= "|~^$*".indexOf($lc$$inline_168$$) ? $lc$$inline_168$$ : "", $cp$$inline_174$$.type = $addToCc$$inline_181_inMatchFor$$inline_163$$ + $cc$$inline_169$$, $cp$$inline_174$$.$attr$ = $ts$$inline_159$$($cmf$$inline_180_inBrackets$$inline_161$$ + 1, $x$$inline_171$$ - $addToCc$$inline_181_inMatchFor$$inline_163$$.length), $addToCc$$inline_181_inMatchFor$$inline_163$$ = $x$$inline_171$$ + 1)
561 }
562 }else {
563 0 <= $inParens$$inline_162$$ ? ")" == $cc$$inline_169$$ && (0 <= $inPseudo$$inline_164$$ && ($cp$$inline_174$$.value = $ts$$inline_159$$($inParens$$inline_162$$ + 1, $x$$inline_171$$)), $inPseudo$$inline_164$$ = $inParens$$inline_162$$ = -1) : "#" == $cc$$inline_169$$ ? ($endAll$$inline_178$$(), $inId$$inline_166$$ = $x$$inline_171$$ + 1) : "." == $cc$$inline_169$$ ? ($endAll$$inline_178$$(), $inClass$$inline_165$$ = $x$$inline_171$$) : ":" == $cc$$inline_169$$ ? ($endAll$$inline_178$$(),
564 $inPseudo$$inline_164$$ = $x$$inline_171$$) : "[" == $cc$$inline_169$$ ? ($endAll$$inline_178$$(), $cmf$$inline_180_inBrackets$$inline_161$$ = $x$$inline_171$$, $cp$$inline_174$$ = {}) : "(" == $cc$$inline_169$$ ? (0 <= $inPseudo$$inline_164$$ && ($cp$$inline_174$$ = {name:$ts$$inline_159$$($inPseudo$$inline_164$$ + 1, $x$$inline_171$$), value:$JSCompiler_alias_NULL$$}, $currentPart$$inline_173$$.$pseudos$.push($cp$$inline_174$$)), $inParens$$inline_162$$ = $x$$inline_171$$) : " " == $cc$$inline_169$$ &&
565 $lc$$inline_168$$ != $cc$$inline_169$$ && ($endAll$$inline_178$$(), 0 <= $inPseudo$$inline_164$$ && $currentPart$$inline_173$$.$pseudos$.push({name:$ts$$inline_159$$($inPseudo$$inline_164$$ + 1, $x$$inline_171$$)}), $currentPart$$inline_173$$.$loops$ = $currentPart$$inline_173$$.$pseudos$.length || $currentPart$$inline_173$$.$attrs$.length || $currentPart$$inline_173$$.$classes$.length, $currentPart$$inline_173$$.$oquery$ = $currentPart$$inline_173$$.$query$ = $ts$$inline_159$$($pStart$$inline_170$$,
566 $x$$inline_171$$), $currentPart$$inline_173$$.$otag$ = $currentPart$$inline_173$$.$tag$ = $currentPart$$inline_173$$.$oper$ ? $JSCompiler_alias_NULL$$ : $currentPart$$inline_173$$.$tag$ || "*", $currentPart$$inline_173$$.$tag$ && ($currentPart$$inline_173$$.$tag$ = $currentPart$$inline_173$$.$tag$.toUpperCase()), $queryParts$$inline_160$$.length && $queryParts$$inline_160$$[$queryParts$$inline_160$$.length - 1].$oper$ && ($currentPart$$inline_173$$.$infixOper$ = $queryParts$$inline_160$$.pop(),
567 $currentPart$$inline_173$$.$query$ = $currentPart$$inline_173$$.$infixOper$.$query$ + " " + $currentPart$$inline_173$$.$query$), $queryParts$$inline_160$$.push($currentPart$$inline_173$$), $currentPart$$inline_173$$ = $JSCompiler_alias_NULL$$)
568 }
569 }
570 }
571 return $queryParts$$inline_160$$
572}
573function $agree$$inline_122$$($first$$inline_185$$, $second$$inline_186$$) {
574 return!$first$$inline_185$$ ? $second$$inline_186$$ : !$second$$inline_186$$ ? $first$$inline_185$$ : function() {
575 return $first$$inline_185$$.apply(window, arguments) && $second$$inline_186$$.apply(window, arguments)
576 }
577}
578function $isElement$$inline_123$$($n$$inline_187$$) {
579 return 1 == $n$$inline_187$$.nodeType
580}
581function $getAttr$$inline_124$$($elem$$inline_188$$, $attr$$inline_189$$) {
582 return!$elem$$inline_188$$ ? "" : "class" == $attr$$inline_189$$ ? $elem$$inline_188$$.className || "" : "for" == $attr$$inline_189$$ ? $elem$$inline_188$$.htmlFor || "" : "style" == $attr$$inline_189$$ ? $elem$$inline_188$$.style.cssText || "" : ($caseSensitive$$inline_120$$ ? $elem$$inline_188$$.getAttribute($attr$$inline_189$$) : $elem$$inline_188$$.getAttribute($attr$$inline_189$$, 2)) || ""
583}
584var $attrs$$inline_125$$ = {"*=":function($attr$$inline_190$$, $value$$inline_191$$) {
585 return function($elem$$inline_192$$) {
586 return 0 <= $getAttr$$inline_124$$($elem$$inline_192$$, $attr$$inline_190$$).indexOf($value$$inline_191$$)
587 }
588}, "^=":function($attr$$inline_193$$, $value$$inline_194$$) {
589 return function($elem$$inline_195$$) {
590 return 0 == $getAttr$$inline_124$$($elem$$inline_195$$, $attr$$inline_193$$).indexOf($value$$inline_194$$)
591 }
592}, "$=":function($attr$$inline_196$$, $value$$inline_197$$) {
593 return function($ea$$inline_199_elem$$inline_198$$) {
594 $ea$$inline_199_elem$$inline_198$$ = " " + $getAttr$$inline_124$$($ea$$inline_199_elem$$inline_198$$, $attr$$inline_196$$);
595 return $ea$$inline_199_elem$$inline_198$$.lastIndexOf($value$$inline_197$$) == $ea$$inline_199_elem$$inline_198$$.length - $value$$inline_197$$.length
596 }
597}, "~=":function($attr$$inline_200$$, $value$$inline_201$$) {
598 var $tval$$inline_202$$ = " " + $value$$inline_201$$ + " ";
599 return function($elem$$inline_203$$) {
600 return 0 <= (" " + $getAttr$$inline_124$$($elem$$inline_203$$, $attr$$inline_200$$) + " ").indexOf($tval$$inline_202$$)
601 }
602}, "|=":function($attr$$inline_204$$, $value$$inline_205$$) {
603 $value$$inline_205$$ = " " + $value$$inline_205$$;
604 return function($ea$$inline_207_elem$$inline_206$$) {
605 $ea$$inline_207_elem$$inline_206$$ = " " + $getAttr$$inline_124$$($ea$$inline_207_elem$$inline_206$$, $attr$$inline_204$$);
606 return $ea$$inline_207_elem$$inline_206$$ == $value$$inline_205$$ || 0 == $ea$$inline_207_elem$$inline_206$$.indexOf($value$$inline_205$$ + "-")
607 }
608}, "=":function($attr$$inline_208$$, $value$$inline_209$$) {
609 return function($elem$$inline_210$$) {
610 return $getAttr$$inline_124$$($elem$$inline_210$$, $attr$$inline_208$$) == $value$$inline_209$$
611 }
612}}, $noNextElementSibling$$inline_126$$ = "undefined" == typeof document.firstChild.nextElementSibling, $nSibling$$inline_127$$ = !$noNextElementSibling$$inline_126$$ ? "nextElementSibling" : "nextSibling", $pSibling$$inline_128$$ = !$noNextElementSibling$$inline_126$$ ? "previousElementSibling" : "previousSibling", $simpleNodeTest$$inline_129$$ = $noNextElementSibling$$inline_126$$ ? $isElement$$inline_123$$ : $goog$functions$TRUE$$;
613function $_lookLeft$$inline_130$$($node$$inline_211$$) {
614 for(;$node$$inline_211$$ = $node$$inline_211$$[$pSibling$$inline_128$$];) {
615 if($simpleNodeTest$$inline_129$$($node$$inline_211$$)) {
616 return $JSCompiler_alias_FALSE$$
617 }
618 }
619 return $JSCompiler_alias_TRUE$$
620}
621function $_lookRight$$inline_131$$($node$$inline_212$$) {
622 for(;$node$$inline_212$$ = $node$$inline_212$$[$nSibling$$inline_127$$];) {
623 if($simpleNodeTest$$inline_129$$($node$$inline_212$$)) {
624 return $JSCompiler_alias_FALSE$$
625 }
626 }
627 return $JSCompiler_alias_TRUE$$
628}
629function $getNodeIndex$$inline_132$$($node$$inline_213$$) {
630 var $root$$inline_214_te$$inline_220$$ = $node$$inline_213$$.parentNode, $i$$inline_215$$ = 0, $l$$inline_219_tret$$inline_216$$ = $root$$inline_214_te$$inline_220$$[$childNodesName$$inline_119$$], $ci$$inline_217$$ = $node$$inline_213$$._i || -1, $cl$$inline_218$$ = $root$$inline_214_te$$inline_220$$._l || -1;
631 if(!$l$$inline_219_tret$$inline_216$$) {
632 return-1
633 }
634 $l$$inline_219_tret$$inline_216$$ = $l$$inline_219_tret$$inline_216$$.length;
635 if($cl$$inline_218$$ == $l$$inline_219_tret$$inline_216$$ && 0 <= $ci$$inline_217$$ && 0 <= $cl$$inline_218$$) {
636 return $ci$$inline_217$$
637 }
638 $root$$inline_214_te$$inline_220$$._l = $l$$inline_219_tret$$inline_216$$;
639 $ci$$inline_217$$ = -1;
640 for($root$$inline_214_te$$inline_220$$ = $root$$inline_214_te$$inline_220$$.firstElementChild || $root$$inline_214_te$$inline_220$$.firstChild;$root$$inline_214_te$$inline_220$$;$root$$inline_214_te$$inline_220$$ = $root$$inline_214_te$$inline_220$$[$nSibling$$inline_127$$]) {
641 $simpleNodeTest$$inline_129$$($root$$inline_214_te$$inline_220$$) && ($root$$inline_214_te$$inline_220$$._i = ++$i$$inline_215$$, $node$$inline_213$$ === $root$$inline_214_te$$inline_220$$ && ($ci$$inline_217$$ = $i$$inline_215$$))
642 }
643 return $ci$$inline_217$$
644}
645function $isEven$$inline_133$$($elem$$inline_221$$) {
646 return!($getNodeIndex$$inline_132$$($elem$$inline_221$$) % 2)
647}
648function $isOdd$$inline_134$$($elem$$inline_222$$) {
649 return $getNodeIndex$$inline_132$$($elem$$inline_222$$) % 2
650}
651var $pseudos$$inline_135$$ = {checked:function() {
652 return function($elem$$inline_223$$) {
653 return $elem$$inline_223$$.checked || $elem$$inline_223$$.attributes.checked
654 }
655}, "first-child":function() {
656 return $_lookLeft$$inline_130$$
657}, "last-child":function() {
658 return $_lookRight$$inline_131$$
659}, "only-child":function() {
660 return function($node$$inline_224$$) {
661 return!$_lookLeft$$inline_130$$($node$$inline_224$$) || !$_lookRight$$inline_131$$($node$$inline_224$$) ? $JSCompiler_alias_FALSE$$ : $JSCompiler_alias_TRUE$$
662 }
663}, empty:function() {
664 return function($elem$$inline_225_x$$inline_227$$) {
665 for(var $cn$$inline_226$$ = $elem$$inline_225_x$$inline_227$$.childNodes, $elem$$inline_225_x$$inline_227$$ = $elem$$inline_225_x$$inline_227$$.childNodes.length - 1;0 <= $elem$$inline_225_x$$inline_227$$;$elem$$inline_225_x$$inline_227$$--) {
666 var $nt$$inline_228$$ = $cn$$inline_226$$[$elem$$inline_225_x$$inline_227$$].nodeType;
667 if(1 === $nt$$inline_228$$ || 3 == $nt$$inline_228$$) {
668 return $JSCompiler_alias_FALSE$$
669 }
670 }
671 return $JSCompiler_alias_TRUE$$
672 }
673}, contains:function($name$$inline_229$$, $condition$$inline_230$$) {
674 var $cz$$inline_231$$ = $condition$$inline_230$$.charAt(0);
675 if('"' == $cz$$inline_231$$ || "'" == $cz$$inline_231$$) {
676 $condition$$inline_230$$ = $condition$$inline_230$$.slice(1, -1)
677 }
678 return function($elem$$inline_232$$) {
679 return 0 <= $elem$$inline_232$$.innerHTML.indexOf($condition$$inline_230$$)
680 }
681}, not:function($name$$inline_233$$, $condition$$inline_234$$) {
682 var $p$$inline_235$$ = $getQueryParts$$inline_121$$($condition$$inline_234$$)[0], $ignores$$inline_236$$ = {$el$:1};
683 "*" != $p$$inline_235$$.$tag$ && ($ignores$$inline_236$$.$tag$ = 1);
684 $p$$inline_235$$.$classes$.length || ($ignores$$inline_236$$.$classes$ = 1);
685 var $ntf$$inline_237$$ = $getSimpleFilterFunc$$inline_137$$($p$$inline_235$$, $ignores$$inline_236$$);
686 return function($elem$$inline_238$$) {
687 return!$ntf$$inline_237$$($elem$$inline_238$$)
688 }
689}, "nth-child":function($name$$inline_239$$, $condition$$inline_240$$) {
690 if("odd" == $condition$$inline_240$$) {
691 return $isOdd$$inline_134$$
692 }
693 if("even" == $condition$$inline_240$$) {
694 return $isEven$$inline_133$$
695 }
696 if(-1 != $condition$$inline_240$$.indexOf("n")) {
697 var $tparts$$inline_242$$ = $condition$$inline_240$$.split("n", 2), $pred$$inline_243$$ = $tparts$$inline_242$$[0] ? "-" == $tparts$$inline_242$$[0] ? -1 : parseInt($tparts$$inline_242$$[0], 10) : 1, $idx$$inline_244$$ = $tparts$$inline_242$$[1] ? parseInt($tparts$$inline_242$$[1], 10) : 0, $lb$$inline_245$$ = 0, $ub$$inline_246$$ = -1;
698 0 < $pred$$inline_243$$ ? 0 > $idx$$inline_244$$ ? $idx$$inline_244$$ = $idx$$inline_244$$ % $pred$$inline_243$$ && $pred$$inline_243$$ + $idx$$inline_244$$ % $pred$$inline_243$$ : 0 < $idx$$inline_244$$ && ($idx$$inline_244$$ >= $pred$$inline_243$$ && ($lb$$inline_245$$ = $idx$$inline_244$$ - $idx$$inline_244$$ % $pred$$inline_243$$), $idx$$inline_244$$ %= $pred$$inline_243$$) : 0 > $pred$$inline_243$$ && ($pred$$inline_243$$ *= -1, 0 < $idx$$inline_244$$ && ($ub$$inline_246$$ = $idx$$inline_244$$,
699 $idx$$inline_244$$ %= $pred$$inline_243$$));
700 if(0 < $pred$$inline_243$$) {
701 return function($elem$$inline_249_i$$inline_250$$) {
702 $elem$$inline_249_i$$inline_250$$ = $getNodeIndex$$inline_132$$($elem$$inline_249_i$$inline_250$$);
703 return $elem$$inline_249_i$$inline_250$$ >= $lb$$inline_245$$ && (0 > $ub$$inline_246$$ || $elem$$inline_249_i$$inline_250$$ <= $ub$$inline_246$$) && $elem$$inline_249_i$$inline_250$$ % $pred$$inline_243$$ == $idx$$inline_244$$
704 }
705 }
706 $condition$$inline_240$$ = $idx$$inline_244$$
707 }
708 var $ncount$$inline_247$$ = parseInt($condition$$inline_240$$, 10);
709 return function($elem$$inline_251$$) {
710 return $getNodeIndex$$inline_132$$($elem$$inline_251$$) == $ncount$$inline_247$$
711 }
712}}, $defaultGetter$$inline_136$$ = $goog$userAgent$IE$$ ? function($cond$$inline_252$$) {
713 var $clc$$inline_253$$ = $cond$$inline_252$$.toLowerCase();
714 "class" == $clc$$inline_253$$ && ($cond$$inline_252$$ = "className");
715 return function($elem$$inline_254$$) {
716 return $caseSensitive$$inline_120$$ ? $elem$$inline_254$$.getAttribute($cond$$inline_252$$) : $elem$$inline_254$$[$cond$$inline_252$$] || $elem$$inline_254$$[$clc$$inline_253$$]
717 }
718} : function($cond$$inline_255$$) {
719 return function($elem$$inline_256$$) {
720 return $elem$$inline_256$$ && $elem$$inline_256$$.getAttribute && $elem$$inline_256$$.hasAttribute($cond$$inline_255$$)
721 }
722};
723function $getSimpleFilterFunc$$inline_137$$($query$$inline_257$$, $ignores$$inline_258$$) {
724 if(!$query$$inline_257$$) {
725 return $goog$functions$TRUE$$
726 }
727 var $ignores$$inline_258$$ = $ignores$$inline_258$$ || {}, $ff$$inline_259$$ = $JSCompiler_alias_NULL$$;
728 $ignores$$inline_258$$.$el$ || ($ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, $isElement$$inline_123$$));
729 $ignores$$inline_258$$.$tag$ || "*" != $query$$inline_257$$.$tag$ && ($ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, function($elem$$inline_260$$) {
730 return $elem$$inline_260$$ && $elem$$inline_260$$.tagName == $query$$inline_257$$.$getTag$()
731 }));
732 $ignores$$inline_258$$.$classes$ || $goog$array$forEach$$($query$$inline_257$$.$classes$, function($cname$$inline_261$$, $idx$$inline_262$$) {
733 var $re$$inline_263$$ = RegExp("(?:^|\\s)" + $cname$$inline_261$$ + "(?:\\s|$)");
734 $ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, function($elem$$inline_264$$) {
735 return $re$$inline_263$$.test($elem$$inline_264$$.className)
736 });
737 $ff$$inline_259$$.count = $idx$$inline_262$$
738 });
739 $ignores$$inline_258$$.$pseudos$ || $goog$array$forEach$$($query$$inline_257$$.$pseudos$, function($pseudo$$inline_265$$) {
740 var $pn$$inline_266$$ = $pseudo$$inline_265$$.name;
741 $pseudos$$inline_135$$[$pn$$inline_266$$] && ($ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, $pseudos$$inline_135$$[$pn$$inline_266$$]($pn$$inline_266$$, $pseudo$$inline_265$$.value)))
742 });
743 $ignores$$inline_258$$.$attrs$ || $goog$array$forEach$$($query$$inline_257$$.$attrs$, function($attr$$inline_267$$) {
744 var $matcher$$inline_268$$, $a$$inline_269$$ = $attr$$inline_267$$.$attr$;
745 $attr$$inline_267$$.type && $attrs$$inline_125$$[$attr$$inline_267$$.type] ? $matcher$$inline_268$$ = $attrs$$inline_125$$[$attr$$inline_267$$.type]($a$$inline_269$$, $attr$$inline_267$$.$matchFor$) : $a$$inline_269$$.length && ($matcher$$inline_268$$ = $defaultGetter$$inline_136$$($a$$inline_269$$));
746 $matcher$$inline_268$$ && ($ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, $matcher$$inline_268$$))
747 });
748 $ignores$$inline_258$$.id || $query$$inline_257$$.id && ($ff$$inline_259$$ = $agree$$inline_122$$($ff$$inline_259$$, function($elem$$inline_270$$) {
749 return!!$elem$$inline_270$$ && $elem$$inline_270$$.id == $query$$inline_257$$.id
750 }));
751 $ff$$inline_259$$ || "default" in $ignores$$inline_258$$ || ($ff$$inline_259$$ = $goog$functions$TRUE$$);
752 return $ff$$inline_259$$
753}
754var $_getElementsFuncCache$$inline_142$$ = {};
755function $getElementsFunc$$inline_143$$($query$$inline_290$$) {
756 var $retFunc$$inline_291$$ = $_getElementsFuncCache$$inline_142$$[$query$$inline_290$$.$query$];
757 if($retFunc$$inline_291$$) {
758 return $retFunc$$inline_291$$
759 }
760 var $io$$inline_292_oper$$inline_293$$ = $query$$inline_290$$.$infixOper$, $io$$inline_292_oper$$inline_293$$ = $io$$inline_292_oper$$inline_293$$ ? $io$$inline_292_oper$$inline_293$$.$oper$ : "", $filterFunc$$inline_294$$ = $getSimpleFilterFunc$$inline_137$$($query$$inline_290$$, {$el$:1}), $wildcardTag$$inline_295$$ = "*" == $query$$inline_290$$.$tag$, $ecs$$inline_296_skipFilters$$inline_297$$ = document.getElementsByClassName;
761 if($io$$inline_292_oper$$inline_293$$) {
762 if($ecs$$inline_296_skipFilters$$inline_297$$ = {$el$:1}, $wildcardTag$$inline_295$$ && ($ecs$$inline_296_skipFilters$$inline_297$$.$tag$ = 1), $filterFunc$$inline_294$$ = $getSimpleFilterFunc$$inline_137$$($query$$inline_290$$, $ecs$$inline_296_skipFilters$$inline_297$$), "+" == $io$$inline_292_oper$$inline_293$$) {
763 var $filterFunc$$inline_809$$ = $filterFunc$$inline_294$$, $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($node$$inline_810$$, $ret$$inline_811$$, $bag$$inline_812$$) {
764 for(;$node$$inline_810$$ = $node$$inline_810$$[$nSibling$$inline_127$$];) {
765 if(!$noNextElementSibling$$inline_126$$ || $isElement$$inline_123$$($node$$inline_810$$)) {
766 (!$bag$$inline_812$$ || $_isUnique$$inline_152$$($node$$inline_810$$, $bag$$inline_812$$)) && $filterFunc$$inline_809$$($node$$inline_810$$) && $ret$$inline_811$$.push($node$$inline_810$$);
767 break
768 }
769 }
770 return $ret$$inline_811$$
771 }
772 }else {
773 if("~" == $io$$inline_292_oper$$inline_293$$) {
774 var $filterFunc$$inline_814$$ = $filterFunc$$inline_294$$, $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_815_te$$inline_818$$, $ret$$inline_816$$, $bag$$inline_817$$) {
775 for($root$$inline_815_te$$inline_818$$ = $root$$inline_815_te$$inline_818$$[$nSibling$$inline_127$$];$root$$inline_815_te$$inline_818$$;) {
776 if($simpleNodeTest$$inline_129$$($root$$inline_815_te$$inline_818$$)) {
777 if($bag$$inline_817$$ && !$_isUnique$$inline_152$$($root$$inline_815_te$$inline_818$$, $bag$$inline_817$$)) {
778 break
779 }
780 $filterFunc$$inline_814$$($root$$inline_815_te$$inline_818$$) && $ret$$inline_816$$.push($root$$inline_815_te$$inline_818$$)
781 }
782 $root$$inline_815_te$$inline_818$$ = $root$$inline_815_te$$inline_818$$[$nSibling$$inline_127$$]
783 }
784 return $ret$$inline_816$$
785 }
786 }else {
787 if(">" == $io$$inline_292_oper$$inline_293$$) {
788 var $filterFunc$$inline_820$$ = $filterFunc$$inline_294$$, $filterFunc$$inline_820$$ = $filterFunc$$inline_820$$ || $goog$functions$TRUE$$, $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_821_te$$inline_824$$, $ret$$inline_822$$, $bag$$inline_823$$) {
789 for(var $x$$inline_825$$ = 0, $tret$$inline_826$$ = $root$$inline_821_te$$inline_824$$[$childNodesName$$inline_119$$];$root$$inline_821_te$$inline_824$$ = $tret$$inline_826$$[$x$$inline_825$$++];) {
790 $simpleNodeTest$$inline_129$$($root$$inline_821_te$$inline_824$$) && ((!$bag$$inline_823$$ || $_isUnique$$inline_152$$($root$$inline_821_te$$inline_824$$, $bag$$inline_823$$)) && $filterFunc$$inline_820$$($root$$inline_821_te$$inline_824$$, $x$$inline_825$$)) && $ret$$inline_822$$.push($root$$inline_821_te$$inline_824$$)
791 }
792 return $ret$$inline_822$$
793 }
794 }
795 }
796 }
797 }else {
798 if($query$$inline_290$$.id) {
799 $filterFunc$$inline_294$$ = !$query$$inline_290$$.$loops$ && $wildcardTag$$inline_295$$ ? $goog$functions$TRUE$$ : $getSimpleFilterFunc$$inline_137$$($query$$inline_290$$, {$el$:1, id:1}), $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_299$$, $arr$$inline_300$$) {
800 var $te$$inline_301$$ = $goog$dom$getDomHelper$$($root$$inline_299$$).$getElement$($query$$inline_290$$.id), $JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$;
801 if($JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ = $te$$inline_301$$ && $filterFunc$$inline_294$$($te$$inline_301$$)) {
802 if(!($JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ = 9 == $root$$inline_299$$.nodeType)) {
803 for($JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ = $te$$inline_301$$.parentNode;$JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ && $JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ != $root$$inline_299$$;) {
804 $JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ = $JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$.parentNode
805 }
806 $JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$ = !!$JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$
807 }
808 }
809 if($JSCompiler_temp$$792_JSCompiler_temp$$793_pn$$inline_830$$) {
810 return $getArr$$inline_117$$($te$$inline_301$$, $arr$$inline_300$$)
811 }
812 }
813 }else {
814 if($ecs$$inline_296_skipFilters$$inline_297$$ && /\{\s*\[native code\]\s*\}/.test(String($ecs$$inline_296_skipFilters$$inline_297$$)) && $query$$inline_290$$.$classes$.length && !$cssCaseBug$$inline_118$$) {
815 var $filterFunc$$inline_294$$ = $getSimpleFilterFunc$$inline_137$$($query$$inline_290$$, {$el$:1, $classes$:1, id:1}), $classesString$$inline_298$$ = $query$$inline_290$$.$classes$.join(" "), $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_302$$, $arr$$inline_303$$) {
816 for(var $ret$$inline_304$$ = $getArr$$inline_117$$(0, $arr$$inline_303$$), $te$$inline_305$$, $x$$inline_306$$ = 0, $tret$$inline_307$$ = $root$$inline_302$$.getElementsByClassName($classesString$$inline_298$$);$te$$inline_305$$ = $tret$$inline_307$$[$x$$inline_306$$++];) {
817 $filterFunc$$inline_294$$($te$$inline_305$$, $root$$inline_302$$) && $ret$$inline_304$$.push($te$$inline_305$$)
818 }
819 return $ret$$inline_304$$
820 }
821 }else {
822 !$wildcardTag$$inline_295$$ && !$query$$inline_290$$.$loops$ ? $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_308$$, $arr$$inline_309$$) {
823 for(var $ret$$inline_310$$ = $getArr$$inline_117$$(0, $arr$$inline_309$$), $te$$inline_311$$, $x$$inline_312$$ = 0, $tret$$inline_313$$ = $root$$inline_308$$.getElementsByTagName($query$$inline_290$$.$getTag$());$te$$inline_311$$ = $tret$$inline_313$$[$x$$inline_312$$++];) {
824 $ret$$inline_310$$.push($te$$inline_311$$)
825 }
826 return $ret$$inline_310$$
827 } : ($filterFunc$$inline_294$$ = $getSimpleFilterFunc$$inline_137$$($query$$inline_290$$, {$el$:1, $tag$:1, id:1}), $retFunc$$inline_291$$ = function $$retFunc$$inline_291$$$($root$$inline_314$$, $arr$$inline_315$$) {
828 for(var $ret$$inline_316$$ = $getArr$$inline_117$$(0, $arr$$inline_315$$), $te$$inline_317$$, $x$$inline_318$$ = 0, $tret$$inline_319$$ = $root$$inline_314$$.getElementsByTagName($query$$inline_290$$.$getTag$());$te$$inline_317$$ = $tret$$inline_319$$[$x$$inline_318$$++];) {
829 $filterFunc$$inline_294$$($te$$inline_317$$, $root$$inline_314$$) && $ret$$inline_316$$.push($te$$inline_317$$)
830 }
831 return $ret$$inline_316$$
832 })
833 }
834 }
835 }
836 return $_getElementsFuncCache$$inline_142$$[$query$$inline_290$$.$query$] = $retFunc$$inline_291$$
837}
838var $_queryFuncCacheDOM$$inline_145$$ = {}, $_queryFuncCacheQSA$$inline_146$$ = {};
839function $getStepQueryFunc$$inline_147$$($query$$inline_332$$) {
840 var $qparts$$inline_333$$ = $getQueryParts$$inline_121$$($goog$string$trim$$($query$$inline_332$$));
841 if(1 == $qparts$$inline_333$$.length) {
842 var $tef$$inline_334$$ = $getElementsFunc$$inline_143$$($qparts$$inline_333$$[0]);
843 return function($r$$inline_336_root$$inline_335$$) {
844 if($r$$inline_336_root$$inline_335$$ = $tef$$inline_334$$($r$$inline_336_root$$inline_335$$, [])) {
845 $r$$inline_336_root$$inline_335$$.$nozip$ = $JSCompiler_alias_TRUE$$
846 }
847 return $r$$inline_336_root$$inline_335$$
848 }
849 }
850 return function($candidates$$inline_834_root$$inline_337$$) {
851 for(var $candidates$$inline_834_root$$inline_337$$ = $getArr$$inline_117$$($candidates$$inline_834_root$$inline_337$$), $qp$$inline_835_te$$inline_837$$, $gef$$inline_842_x$$inline_836$$, $qpl$$inline_838$$ = $qparts$$inline_333$$.length, $bag$$inline_839$$, $ret$$inline_840$$, $i$$inline_841$$ = 0;$i$$inline_841$$ < $qpl$$inline_838$$;$i$$inline_841$$++) {
852 $ret$$inline_840$$ = [];
853 $qp$$inline_835_te$$inline_837$$ = $qparts$$inline_333$$[$i$$inline_841$$];
854 $gef$$inline_842_x$$inline_836$$ = $candidates$$inline_834_root$$inline_337$$.length - 1;
855 0 < $gef$$inline_842_x$$inline_836$$ && ($bag$$inline_839$$ = {}, $ret$$inline_840$$.$nozip$ = $JSCompiler_alias_TRUE$$);
856 $gef$$inline_842_x$$inline_836$$ = $getElementsFunc$$inline_143$$($qp$$inline_835_te$$inline_837$$);
857 for(var $j$$inline_843$$ = 0;$qp$$inline_835_te$$inline_837$$ = $candidates$$inline_834_root$$inline_337$$[$j$$inline_843$$];$j$$inline_843$$++) {
858 $gef$$inline_842_x$$inline_836$$($qp$$inline_835_te$$inline_837$$, $ret$$inline_840$$, $bag$$inline_839$$)
859 }
860 if(!$ret$$inline_840$$.length) {
861 break
862 }
863 $candidates$$inline_834_root$$inline_337$$ = $ret$$inline_840$$
864 }
865 return $ret$$inline_840$$
866 }
867}
868var $qsaAvail$$inline_148$$ = !!document.querySelectorAll && (!$goog$userAgent$WEBKIT$$ || $goog$userAgent$isVersion$$("526"));
869function $getQueryFunc$$inline_149$$($query$$inline_338$$, $opt_forceDOM$$inline_339$$) {
870 if($qsaAvail$$inline_148$$) {
871 var $domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$ = $_queryFuncCacheQSA$$inline_146$$[$query$$inline_338$$];
872 if($domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$ && !$opt_forceDOM$$inline_339$$) {
873 return $domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$
874 }
875 }
876 if($domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$ = $_queryFuncCacheDOM$$inline_145$$[$query$$inline_338$$]) {
877 return $domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$
878 }
879 var $domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$ = $query$$inline_338$$.charAt(0), $nospace$$inline_343$$ = -1 == $query$$inline_338$$.indexOf(" ");
880 0 <= $query$$inline_338$$.indexOf("#") && $nospace$$inline_343$$ && ($opt_forceDOM$$inline_339$$ = $JSCompiler_alias_TRUE$$);
881 if($qsaAvail$$inline_148$$ && !$opt_forceDOM$$inline_339$$ && -1 == ">~+".indexOf($domCached$$inline_341_qcz$$inline_342_qsaCached$$inline_340$$) && (!$goog$userAgent$IE$$ || -1 == $query$$inline_338$$.indexOf(":")) && !($cssCaseBug$$inline_118$$ && 0 <= $query$$inline_338$$.indexOf(".")) && -1 == $query$$inline_338$$.indexOf(":contains") && -1 == $query$$inline_338$$.indexOf("|=")) {
882 var $tq$$inline_344$$ = 0 <= ">~+".indexOf($query$$inline_338$$.charAt($query$$inline_338$$.length - 1)) ? $query$$inline_338$$ + " *" : $query$$inline_338$$;
883 return $_queryFuncCacheQSA$$inline_146$$[$query$$inline_338$$] = function $$_queryFuncCacheQSA$$inline_146$$$$query$$inline_338$$$($root$$inline_346$$) {
884 try {
885 9 == $root$$inline_346$$.nodeType || $nospace$$inline_343$$ || $JSCompiler_alias_THROW$$("");
886 var $r$$inline_347$$ = $root$$inline_346$$.querySelectorAll($tq$$inline_344$$);
887 $goog$userAgent$IE$$ ? $r$$inline_347$$.$commentStrip$ = $JSCompiler_alias_TRUE$$ : $r$$inline_347$$.$nozip$ = $JSCompiler_alias_TRUE$$;
888 return $r$$inline_347$$
889 }catch($e$$inline_348$$) {
890 return $getQueryFunc$$inline_149$$($query$$inline_338$$, $JSCompiler_alias_TRUE$$)($root$$inline_346$$)
891 }
892 }
893 }
894 var $parts$$inline_345$$ = $query$$inline_338$$.split(/\s*,\s*/);
895 return $_queryFuncCacheDOM$$inline_145$$[$query$$inline_338$$] = 2 > $parts$$inline_345$$.length ? $getStepQueryFunc$$inline_147$$($query$$inline_338$$) : function($root$$inline_349$$) {
896 for(var $pindex$$inline_350$$ = 0, $ret$$inline_351$$ = [], $tp$$inline_352$$;$tp$$inline_352$$ = $parts$$inline_345$$[$pindex$$inline_350$$++];) {
897 $ret$$inline_351$$ = $ret$$inline_351$$.concat($getStepQueryFunc$$inline_147$$($tp$$inline_352$$)($root$$inline_349$$))
898 }
899 return $ret$$inline_351$$
900 }
901}
902var $_zipIdx$$inline_150$$ = 0, $_nodeUID$$inline_151$$ = $goog$userAgent$IE$$ ? function($node$$inline_353$$) {
903 return $caseSensitive$$inline_120$$ ? $node$$inline_353$$.getAttribute("_uid") || $node$$inline_353$$.setAttribute("_uid", ++$_zipIdx$$inline_150$$) || $_zipIdx$$inline_150$$ : $node$$inline_353$$.uniqueID
904} : function($node$$inline_354$$) {
905 return $node$$inline_354$$._uid || ($node$$inline_354$$._uid = ++$_zipIdx$$inline_150$$)
906};
907function $_isUnique$$inline_152$$($node$$inline_355$$, $bag$$inline_356$$) {
908 if(!$bag$$inline_356$$) {
909 return 1
910 }
911 var $id$$inline_357$$ = $_nodeUID$$inline_151$$($node$$inline_355$$);
912 return!$bag$$inline_356$$[$id$$inline_357$$] ? $bag$$inline_356$$[$id$$inline_357$$] = 1 : 0
913}
914function $_zip$$inline_153$$($arr$$inline_358$$) {
915 if($arr$$inline_358$$ && $arr$$inline_358$$.$nozip$) {
916 return $arr$$inline_358$$
917 }
918 var $ret$$inline_359$$ = [];
919 if(!$arr$$inline_358$$ || !$arr$$inline_358$$.length) {
920 return $ret$$inline_359$$
921 }
922 $arr$$inline_358$$[0] && $ret$$inline_359$$.push($arr$$inline_358$$[0]);
923 if(2 > $arr$$inline_358$$.length) {
924 return $ret$$inline_359$$
925 }
926 $_zipIdx$$inline_150$$++;
927 if($goog$userAgent$IE$$ && $caseSensitive$$inline_120$$) {
928 var $szidx$$inline_360$$ = $_zipIdx$$inline_150$$ + "";
929 $arr$$inline_358$$[0].setAttribute("_zipIdx", $szidx$$inline_360$$);
930 for(var $x$$inline_361$$ = 1, $te$$inline_362$$;$te$$inline_362$$ = $arr$$inline_358$$[$x$$inline_361$$];$x$$inline_361$$++) {
931 $arr$$inline_358$$[$x$$inline_361$$].getAttribute("_zipIdx") != $szidx$$inline_360$$ && $ret$$inline_359$$.push($te$$inline_362$$), $te$$inline_362$$.setAttribute("_zipIdx", $szidx$$inline_360$$)
932 }
933 }else {
934 if($goog$userAgent$IE$$ && $arr$$inline_358$$.$commentStrip$) {
935 try {
936 for($x$$inline_361$$ = 1;$te$$inline_362$$ = $arr$$inline_358$$[$x$$inline_361$$];$x$$inline_361$$++) {
937 $isElement$$inline_123$$($te$$inline_362$$) && $ret$$inline_359$$.push($te$$inline_362$$)
938 }
939 }catch($e$$inline_363$$) {
940 }
941 }else {
942 $arr$$inline_358$$[0] && ($arr$$inline_358$$[0]._zipIdx = $_zipIdx$$inline_150$$);
943 for($x$$inline_361$$ = 1;$te$$inline_362$$ = $arr$$inline_358$$[$x$$inline_361$$];$x$$inline_361$$++) {
944 $arr$$inline_358$$[$x$$inline_361$$]._zipIdx != $_zipIdx$$inline_150$$ && $ret$$inline_359$$.push($te$$inline_362$$), $te$$inline_362$$._zipIdx = $_zipIdx$$inline_150$$
945 }
946 }
947 }
948 return $ret$$inline_359$$
949}
950function $query$$inline_154$$($query$$inline_364$$, $root$$inline_365$$) {
951 if(!$query$$inline_364$$) {
952 return[]
953 }
954 if($query$$inline_364$$.constructor == Array) {
955 return $query$$inline_364$$
956 }
957 if(!$goog$isString$$($query$$inline_364$$)) {
958 return[$query$$inline_364$$]
959 }
960 if($goog$isString$$($root$$inline_365$$) && ($root$$inline_365$$ = $goog$isString$$($root$$inline_365$$) ? document.getElementById($root$$inline_365$$) : $root$$inline_365$$, !$root$$inline_365$$)) {
961 return[]
962 }
963 var $root$$inline_365$$ = $root$$inline_365$$ || document, $od$$inline_366_r$$inline_367$$ = $root$$inline_365$$.ownerDocument || $root$$inline_365$$.documentElement;
964 $caseSensitive$$inline_120$$ = $root$$inline_365$$.contentType && "application/xml" == $root$$inline_365$$.contentType || $goog$userAgent$OPERA$$ && ($root$$inline_365$$.doctype || "[object XMLDocument]" == $od$$inline_366_r$$inline_367$$.toString()) || !!$od$$inline_366_r$$inline_367$$ && ($goog$userAgent$IE$$ ? $od$$inline_366_r$$inline_367$$.xml : $root$$inline_365$$.xmlVersion || $od$$inline_366_r$$inline_367$$.xmlVersion);
965 return($od$$inline_366_r$$inline_367$$ = $getQueryFunc$$inline_149$$($query$$inline_364$$)($root$$inline_365$$)) && $od$$inline_366_r$$inline_367$$.$nozip$ ? $od$$inline_366_r$$inline_367$$ : $_zip$$inline_153$$($od$$inline_366_r$$inline_367$$)
966}
967$query$$inline_154$$.$pseudos$ = $pseudos$$inline_135$$;
968$goog$exportPath_$$("goog.dom.query", $query$$inline_154$$);
969$goog$exportPath_$$("goog.dom.query.pseudos", $query$$inline_154$$.$pseudos$);
970var $goog$events$BrowserFeature$HAS_W3C_BUTTON$$ = !$goog$userAgent$IE$$ || $goog$userAgent$isDocumentMode$$(9), $goog$events$BrowserFeature$HAS_W3C_EVENT_SUPPORT$$ = !$goog$userAgent$IE$$ || $goog$userAgent$isDocumentMode$$(9), $goog$events$BrowserFeature$SET_KEY_CODE_TO_PREVENT_DEFAULT$$ = $goog$userAgent$IE$$ && !$goog$userAgent$isVersion$$("9");
971!$goog$userAgent$WEBKIT$$ || $goog$userAgent$isVersion$$("528");
972$goog$userAgent$GECKO$$ && $goog$userAgent$isVersion$$("1.9b") || $goog$userAgent$IE$$ && $goog$userAgent$isVersion$$("8") || $goog$userAgent$OPERA$$ && $goog$userAgent$isVersion$$("9.5") || $goog$userAgent$WEBKIT$$ && $goog$userAgent$isVersion$$("528");
973$goog$userAgent$GECKO$$ && !$goog$userAgent$isVersion$$("8") || $goog$userAgent$IE$$ && $goog$userAgent$isVersion$$("9");
974function $goog$Disposable$$() {
975 0 != $goog$Disposable$MonitoringMode$OFF$$ && (this.$creationStack$ = Error().stack, $goog$getUid$$(this))
976}
977var $goog$Disposable$MonitoringMode$OFF$$ = 0;
978$goog$Disposable$$.prototype.$disposed_$ = $JSCompiler_alias_FALSE$$;
979function $goog$events$Event$$($type$$55$$, $opt_target$$1$$) {
980 this.type = $type$$55$$;
981 this.currentTarget = this.target = $opt_target$$1$$
982}
983$JSCompiler_prototypeAlias$$ = $goog$events$Event$$.prototype;
984$JSCompiler_prototypeAlias$$.$propagationStopped_$ = $JSCompiler_alias_FALSE$$;
985$JSCompiler_prototypeAlias$$.defaultPrevented = $JSCompiler_alias_FALSE$$;
986$JSCompiler_prototypeAlias$$.$returnValue_$ = $JSCompiler_alias_TRUE$$;
987$JSCompiler_prototypeAlias$$.stopPropagation = function $$JSCompiler_prototypeAlias$$$stopPropagation$() {
988 this.$propagationStopped_$ = $JSCompiler_alias_TRUE$$
989};
990$JSCompiler_prototypeAlias$$.preventDefault = function $$JSCompiler_prototypeAlias$$$preventDefault$() {
991 this.defaultPrevented = $JSCompiler_alias_TRUE$$;
992 this.$returnValue_$ = $JSCompiler_alias_FALSE$$
993};
994function $goog$events$Event$preventDefault$$($e$$15$$) {
995 $e$$15$$.preventDefault()
996}
997;function $goog$reflect$sinkValue$$($x$$67$$) {
998 $goog$reflect$sinkValue$$[" "]($x$$67$$);
999 return $x$$67$$
1000}
1001$goog$reflect$sinkValue$$[" "] = $goog$nullFunction$$;
1002function $goog$events$BrowserEvent$$($opt_e$$, $opt_currentTarget$$) {
1003 $opt_e$$ && this.init($opt_e$$, $opt_currentTarget$$)
1004}
1005$goog$inherits$$($goog$events$BrowserEvent$$, $goog$events$Event$$);
1006var $goog$events$BrowserEvent$IEButtonMap$$ = [1, 4, 2];
1007$JSCompiler_prototypeAlias$$ = $goog$events$BrowserEvent$$.prototype;
1008$JSCompiler_prototypeAlias$$.target = $JSCompiler_alias_NULL$$;
1009$JSCompiler_prototypeAlias$$.relatedTarget = $JSCompiler_alias_NULL$$;
1010$JSCompiler_prototypeAlias$$.offsetX = 0;
1011$JSCompiler_prototypeAlias$$.offsetY = 0;
1012$JSCompiler_prototypeAlias$$.clientX = 0;
1013$JSCompiler_prototypeAlias$$.clientY = 0;
1014$JSCompiler_prototypeAlias$$.screenX = 0;
1015$JSCompiler_prototypeAlias$$.screenY = 0;
1016$JSCompiler_prototypeAlias$$.button = 0;
1017$JSCompiler_prototypeAlias$$.keyCode = 0;
1018$JSCompiler_prototypeAlias$$.charCode = 0;
1019$JSCompiler_prototypeAlias$$.ctrlKey = $JSCompiler_alias_FALSE$$;
1020$JSCompiler_prototypeAlias$$.altKey = $JSCompiler_alias_FALSE$$;
1021$JSCompiler_prototypeAlias$$.shiftKey = $JSCompiler_alias_FALSE$$;
1022$JSCompiler_prototypeAlias$$.metaKey = $JSCompiler_alias_FALSE$$;
1023$JSCompiler_prototypeAlias$$.$platformModifierKey$ = $JSCompiler_alias_FALSE$$;
1024$JSCompiler_prototypeAlias$$.$event_$ = $JSCompiler_alias_NULL$$;
1025$JSCompiler_prototypeAlias$$.init = function $$JSCompiler_prototypeAlias$$$init$($e$$17$$, $opt_currentTarget$$1$$) {
1026 var $type$$57$$ = this.type = $e$$17$$.type;
1027 $goog$events$Event$$.call(this, $type$$57$$);
1028 this.target = $e$$17$$.target || $e$$17$$.srcElement;
1029 this.currentTarget = $opt_currentTarget$$1$$;
1030 var $relatedTarget$$ = $e$$17$$.relatedTarget;
1031 if($relatedTarget$$) {
1032 if($goog$userAgent$GECKO$$) {
1033 var $JSCompiler_inline_result$$48$$;
1034 a: {
1035 try {
1036 $goog$reflect$sinkValue$$($relatedTarget$$.nodeName);
1037 $JSCompiler_inline_result$$48$$ = $JSCompiler_alias_TRUE$$;
1038 break a
1039 }catch($e$$inline_379$$) {
1040 }
1041 $JSCompiler_inline_result$$48$$ = $JSCompiler_alias_FALSE$$
1042 }
1043 $JSCompiler_inline_result$$48$$ || ($relatedTarget$$ = $JSCompiler_alias_NULL$$)
1044 }
1045 }else {
1046 "mouseover" == $type$$57$$ ? $relatedTarget$$ = $e$$17$$.fromElement : "mouseout" == $type$$57$$ && ($relatedTarget$$ = $e$$17$$.toElement)
1047 }
1048 this.relatedTarget = $relatedTarget$$;
1049 this.offsetX = $goog$userAgent$WEBKIT$$ || $e$$17$$.offsetX !== $JSCompiler_alias_VOID$$ ? $e$$17$$.offsetX : $e$$17$$.layerX;
1050 this.offsetY = $goog$userAgent$WEBKIT$$ || $e$$17$$.offsetY !== $JSCompiler_alias_VOID$$ ? $e$$17$$.offsetY : $e$$17$$.layerY;
1051 this.clientX = $e$$17$$.clientX !== $JSCompiler_alias_VOID$$ ? $e$$17$$.clientX : $e$$17$$.pageX;
1052 this.clientY = $e$$17$$.clientY !== $JSCompiler_alias_VOID$$ ? $e$$17$$.clientY : $e$$17$$.pageY;
1053 this.screenX = $e$$17$$.screenX || 0;
1054 this.screenY = $e$$17$$.screenY || 0;
1055 this.button = $e$$17$$.button;
1056 this.keyCode = $e$$17$$.keyCode || 0;
1057 this.charCode = $e$$17$$.charCode || ("keypress" == $type$$57$$ ? $e$$17$$.keyCode : 0);
1058 this.ctrlKey = $e$$17$$.ctrlKey;
1059 this.altKey = $e$$17$$.altKey;
1060 this.shiftKey = $e$$17$$.shiftKey;
1061 this.metaKey = $e$$17$$.metaKey;
1062 this.$platformModifierKey$ = $goog$userAgent$detectedMac_$$ ? $e$$17$$.metaKey : $e$$17$$.ctrlKey;
1063 this.state = $e$$17$$.state;
1064 this.$event_$ = $e$$17$$;
1065 $e$$17$$.defaultPrevented && this.preventDefault();
1066 delete this.$propagationStopped_$
1067};
1068function $JSCompiler_StaticMethods_isMouseActionButton$$($JSCompiler_StaticMethods_isMouseActionButton$self$$) {
1069 return($goog$events$BrowserFeature$HAS_W3C_BUTTON$$ ? 0 == $JSCompiler_StaticMethods_isMouseActionButton$self$$.$event_$.button : "click" == $JSCompiler_StaticMethods_isMouseActionButton$self$$.type ? $JSCompiler_alias_TRUE$$ : !!($JSCompiler_StaticMethods_isMouseActionButton$self$$.$event_$.button & $goog$events$BrowserEvent$IEButtonMap$$[0])) && !($goog$userAgent$WEBKIT$$ && $goog$userAgent$detectedMac_$$ && $JSCompiler_StaticMethods_isMouseActionButton$self$$.ctrlKey)
1070}
1071$JSCompiler_prototypeAlias$$.stopPropagation = function $$JSCompiler_prototypeAlias$$$stopPropagation$() {
1072 $goog$events$BrowserEvent$$.$superClass_$.stopPropagation.call(this);
1073 this.$event_$.stopPropagation ? this.$event_$.stopPropagation() : this.$event_$.cancelBubble = $JSCompiler_alias_TRUE$$
1074};
1075$JSCompiler_prototypeAlias$$.preventDefault = function $$JSCompiler_prototypeAlias$$$preventDefault$() {
1076 $goog$events$BrowserEvent$$.$superClass_$.preventDefault.call(this);
1077 var $be$$ = this.$event_$;
1078 if($be$$.preventDefault) {
1079 $be$$.preventDefault()
1080 }else {
1081 if($be$$.returnValue = $JSCompiler_alias_FALSE$$, $goog$events$BrowserFeature$SET_KEY_CODE_TO_PREVENT_DEFAULT$$) {
1082 try {
1083 if($be$$.ctrlKey || 112 <= $be$$.keyCode && 123 >= $be$$.keyCode) {
1084 $be$$.keyCode = -1
1085 }
1086 }catch($ex$$1$$) {
1087 }
1088 }
1089 }
1090};
1091$JSCompiler_prototypeAlias$$.$getBrowserEvent$ = $JSCompiler_get$$("$event_$");
1092function $goog$events$Listener$$() {
1093}
1094var $goog$events$Listener$counter_$$ = 0;
1095$JSCompiler_prototypeAlias$$ = $goog$events$Listener$$.prototype;
1096$JSCompiler_prototypeAlias$$.key = 0;
1097$JSCompiler_prototypeAlias$$.$removed$ = $JSCompiler_alias_FALSE$$;
1098$JSCompiler_prototypeAlias$$.$callOnce$ = $JSCompiler_alias_FALSE$$;
1099$JSCompiler_prototypeAlias$$.init = function $$JSCompiler_prototypeAlias$$$init$($listener$$32$$, $proxy$$, $src$$6$$, $type$$58$$, $capture$$, $opt_handler$$) {
1100 $goog$isFunction$$($listener$$32$$) ? this.$isFunctionListener_$ = $JSCompiler_alias_TRUE$$ : $listener$$32$$ && $listener$$32$$.handleEvent && $goog$isFunction$$($listener$$32$$.handleEvent) ? this.$isFunctionListener_$ = $JSCompiler_alias_FALSE$$ : $JSCompiler_alias_THROW$$(Error("Invalid listener argument"));
1101 this.$listener$ = $listener$$32$$;
1102 this.$proxy$ = $proxy$$;
1103 this.src = $src$$6$$;
1104 this.type = $type$$58$$;
1105 this.capture = !!$capture$$;
1106 this.$handler$ = $opt_handler$$;
1107 this.$callOnce$ = $JSCompiler_alias_FALSE$$;
1108 this.key = ++$goog$events$Listener$counter_$$;
1109 this.$removed$ = $JSCompiler_alias_FALSE$$
1110};
1111$JSCompiler_prototypeAlias$$.handleEvent = function $$JSCompiler_prototypeAlias$$$handleEvent$($eventObject$$) {
1112 return this.$isFunctionListener_$ ? this.$listener$.call(this.$handler$ || this.src, $eventObject$$) : this.$listener$.handleEvent.call(this.$listener$, $eventObject$$)
1113};
1114var $goog$events$listeners_$$ = {}, $goog$events$listenerTree_$$ = {}, $goog$events$sources_$$ = {}, $goog$events$onStringMap_$$ = {};
1115function $goog$events$listen$$($src$$7$$, $type$$59$$, $key$$43_listener$$33$$, $capture$$1_opt_capt$$2$$, $opt_handler$$1$$) {
1116 if($type$$59$$) {
1117 if($goog$isArray$$($type$$59$$)) {
1118 for(var $i$$67_proxy$$1$$ = 0;$i$$67_proxy$$1$$ < $type$$59$$.length;$i$$67_proxy$$1$$++) {
1119 $goog$events$listen$$($src$$7$$, $type$$59$$[$i$$67_proxy$$1$$], $key$$43_listener$$33$$, $capture$$1_opt_capt$$2$$, $opt_handler$$1$$)
1120 }
1121 return $JSCompiler_alias_NULL$$
1122 }
1123 var $capture$$1_opt_capt$$2$$ = !!$capture$$1_opt_capt$$2$$, $listenerObj_map$$ = $goog$events$listenerTree_$$;
1124 $type$$59$$ in $listenerObj_map$$ || ($listenerObj_map$$[$type$$59$$] = {$count_$:0, $remaining_$:0});
1125 $listenerObj_map$$ = $listenerObj_map$$[$type$$59$$];
1126 $capture$$1_opt_capt$$2$$ in $listenerObj_map$$ || ($listenerObj_map$$[$capture$$1_opt_capt$$2$$] = {$count_$:0, $remaining_$:0}, $listenerObj_map$$.$count_$++);
1127 var $listenerObj_map$$ = $listenerObj_map$$[$capture$$1_opt_capt$$2$$], $srcUid$$ = $goog$getUid$$($src$$7$$), $listenerArray$$;
1128 $listenerObj_map$$.$remaining_$++;
1129 if($listenerObj_map$$[$srcUid$$]) {
1130 $listenerArray$$ = $listenerObj_map$$[$srcUid$$];
1131 for($i$$67_proxy$$1$$ = 0;$i$$67_proxy$$1$$ < $listenerArray$$.length;$i$$67_proxy$$1$$++) {
1132 if($listenerObj_map$$ = $listenerArray$$[$i$$67_proxy$$1$$], $listenerObj_map$$.$listener$ == $key$$43_listener$$33$$ && $listenerObj_map$$.$handler$ == $opt_handler$$1$$) {
1133 if($listenerObj_map$$.$removed$) {
1134 break
1135 }
1136 return $listenerArray$$[$i$$67_proxy$$1$$].key
1137 }
1138 }
1139 }else {
1140 $listenerArray$$ = $listenerObj_map$$[$srcUid$$] = [], $listenerObj_map$$.$count_$++
1141 }
1142 var $proxyCallbackFunction$$inline_384$$ = $goog$events$handleBrowserEvent_$$, $f$$inline_385$$ = $goog$events$BrowserFeature$HAS_W3C_EVENT_SUPPORT$$ ? function($eventObject$$inline_386$$) {
1143 return $proxyCallbackFunction$$inline_384$$.call($f$$inline_385$$.src, $f$$inline_385$$.key, $eventObject$$inline_386$$)
1144 } : function($eventObject$$inline_387_v$$inline_388$$) {
1145 $eventObject$$inline_387_v$$inline_388$$ = $proxyCallbackFunction$$inline_384$$.call($f$$inline_385$$.src, $f$$inline_385$$.key, $eventObject$$inline_387_v$$inline_388$$);
1146 if(!$eventObject$$inline_387_v$$inline_388$$) {
1147 return $eventObject$$inline_387_v$$inline_388$$
1148 }
1149 }, $i$$67_proxy$$1$$ = $f$$inline_385$$;
1150 $i$$67_proxy$$1$$.src = $src$$7$$;
1151 $listenerObj_map$$ = new $goog$events$Listener$$;
1152 $listenerObj_map$$.init($key$$43_listener$$33$$, $i$$67_proxy$$1$$, $src$$7$$, $type$$59$$, $capture$$1_opt_capt$$2$$, $opt_handler$$1$$);
1153 $key$$43_listener$$33$$ = $listenerObj_map$$.key;
1154 $i$$67_proxy$$1$$.key = $key$$43_listener$$33$$;
1155 $listenerArray$$.push($listenerObj_map$$);
1156 $goog$events$listeners_$$[$key$$43_listener$$33$$] = $listenerObj_map$$;
1157 $goog$events$sources_$$[$srcUid$$] || ($goog$events$sources_$$[$srcUid$$] = []);
1158 $goog$events$sources_$$[$srcUid$$].push($listenerObj_map$$);
1159 $src$$7$$.addEventListener ? ($src$$7$$ == $goog$global$$ || !$src$$7$$.$customEvent_$) && $src$$7$$.addEventListener($type$$59$$, $i$$67_proxy$$1$$, $capture$$1_opt_capt$$2$$) : $src$$7$$.attachEvent($type$$59$$ in $goog$events$onStringMap_$$ ? $goog$events$onStringMap_$$[$type$$59$$] : $goog$events$onStringMap_$$[$type$$59$$] = "on" + $type$$59$$, $i$$67_proxy$$1$$);
1160 return $key$$43_listener$$33$$
1161 }
1162 $JSCompiler_alias_THROW$$(Error("Invalid event type"))
1163}
1164function $goog$events$unlisten$$($listenerArray$$1_src$$10$$, $type$$61$$, $listener$$36$$, $capture$$2_opt_capt$$5$$, $opt_handler$$4$$) {
1165 if($goog$isArray$$($type$$61$$)) {
1166 for(var $i$$69$$ = 0;$i$$69$$ < $type$$61$$.length;$i$$69$$++) {
1167 $goog$events$unlisten$$($listenerArray$$1_src$$10$$, $type$$61$$[$i$$69$$], $listener$$36$$, $capture$$2_opt_capt$$5$$, $opt_handler$$4$$)
1168 }
1169 }else {
1170 if($capture$$2_opt_capt$$5$$ = !!$capture$$2_opt_capt$$5$$, $listenerArray$$1_src$$10$$ = $goog$events$getListeners_$$($listenerArray$$1_src$$10$$, $type$$61$$, $capture$$2_opt_capt$$5$$)) {
1171 for($i$$69$$ = 0;$i$$69$$ < $listenerArray$$1_src$$10$$.length;$i$$69$$++) {
1172 if($listenerArray$$1_src$$10$$[$i$$69$$].$listener$ == $listener$$36$$ && $listenerArray$$1_src$$10$$[$i$$69$$].capture == $capture$$2_opt_capt$$5$$ && $listenerArray$$1_src$$10$$[$i$$69$$].$handler$ == $opt_handler$$4$$) {
1173 $goog$events$unlistenByKey$$($listenerArray$$1_src$$10$$[$i$$69$$].key);
1174 break
1175 }
1176 }
1177 }
1178 }
1179}
1180function $goog$events$unlistenByKey$$($key$$45$$) {
1181 if(!$goog$events$listeners_$$[$key$$45$$]) {
1182 return $JSCompiler_alias_FALSE$$
1183 }
1184 var $listener$$37_listenerArray$$2$$ = $goog$events$listeners_$$[$key$$45$$];
1185 if($listener$$37_listenerArray$$2$$.$removed$) {
1186 return $JSCompiler_alias_FALSE$$
1187 }
1188 var $src$$11_srcUid$$1$$ = $listener$$37_listenerArray$$2$$.src, $type$$62$$ = $listener$$37_listenerArray$$2$$.type, $proxy$$2_sourcesArray$$ = $listener$$37_listenerArray$$2$$.$proxy$, $capture$$3$$ = $listener$$37_listenerArray$$2$$.capture;
1189 $src$$11_srcUid$$1$$.removeEventListener ? ($src$$11_srcUid$$1$$ == $goog$global$$ || !$src$$11_srcUid$$1$$.$customEvent_$) && $src$$11_srcUid$$1$$.removeEventListener($type$$62$$, $proxy$$2_sourcesArray$$, $capture$$3$$) : $src$$11_srcUid$$1$$.detachEvent && $src$$11_srcUid$$1$$.detachEvent($type$$62$$ in $goog$events$onStringMap_$$ ? $goog$events$onStringMap_$$[$type$$62$$] : $goog$events$onStringMap_$$[$type$$62$$] = "on" + $type$$62$$, $proxy$$2_sourcesArray$$);
1190 $src$$11_srcUid$$1$$ = $goog$getUid$$($src$$11_srcUid$$1$$);
1191 $goog$events$sources_$$[$src$$11_srcUid$$1$$] && ($proxy$$2_sourcesArray$$ = $goog$events$sources_$$[$src$$11_srcUid$$1$$], $goog$array$remove$$($proxy$$2_sourcesArray$$, $listener$$37_listenerArray$$2$$), 0 == $proxy$$2_sourcesArray$$.length && delete $goog$events$sources_$$[$src$$11_srcUid$$1$$]);
1192 $listener$$37_listenerArray$$2$$.$removed$ = $JSCompiler_alias_TRUE$$;
1193 if($listener$$37_listenerArray$$2$$ = $goog$events$listenerTree_$$[$type$$62$$][$capture$$3$$][$src$$11_srcUid$$1$$]) {
1194 $listener$$37_listenerArray$$2$$.$needsCleanup_$ = $JSCompiler_alias_TRUE$$, $goog$events$cleanUp_$$($type$$62$$, $capture$$3$$, $src$$11_srcUid$$1$$, $listener$$37_listenerArray$$2$$)
1195 }
1196 delete $goog$events$listeners_$$[$key$$45$$];
1197 return $JSCompiler_alias_TRUE$$
1198}
1199function $goog$events$cleanUp_$$($type$$63$$, $capture$$4$$, $srcUid$$2$$, $listenerArray$$3$$) {
1200 if(!$listenerArray$$3$$.$locked_$ && $listenerArray$$3$$.$needsCleanup_$) {
1201 for(var $oldIndex$$ = 0, $newIndex$$ = 0;$oldIndex$$ < $listenerArray$$3$$.length;$oldIndex$$++) {
1202 $listenerArray$$3$$[$oldIndex$$].$removed$ ? $listenerArray$$3$$[$oldIndex$$].$proxy$.src = $JSCompiler_alias_NULL$$ : ($oldIndex$$ != $newIndex$$ && ($listenerArray$$3$$[$newIndex$$] = $listenerArray$$3$$[$oldIndex$$]), $newIndex$$++)
1203 }
1204 $listenerArray$$3$$.length = $newIndex$$;
1205 $listenerArray$$3$$.$needsCleanup_$ = $JSCompiler_alias_FALSE$$;
1206 0 == $newIndex$$ && (delete $goog$events$listenerTree_$$[$type$$63$$][$capture$$4$$][$srcUid$$2$$], $goog$events$listenerTree_$$[$type$$63$$][$capture$$4$$].$count_$--, 0 == $goog$events$listenerTree_$$[$type$$63$$][$capture$$4$$].$count_$ && (delete $goog$events$listenerTree_$$[$type$$63$$][$capture$$4$$], $goog$events$listenerTree_$$[$type$$63$$].$count_$--), 0 == $goog$events$listenerTree_$$[$type$$63$$].$count_$ && delete $goog$events$listenerTree_$$[$type$$63$$])
1207 }
1208}
1209function $goog$events$getListeners_$$($obj$$66_objUid$$, $type$$65$$, $capture$$6$$) {
1210 var $map$$1$$ = $goog$events$listenerTree_$$;
1211 return $type$$65$$ in $map$$1$$ && ($map$$1$$ = $map$$1$$[$type$$65$$], $capture$$6$$ in $map$$1$$ && ($map$$1$$ = $map$$1$$[$capture$$6$$], $obj$$66_objUid$$ = $goog$getUid$$($obj$$66_objUid$$), $map$$1$$[$obj$$66_objUid$$])) ? $map$$1$$[$obj$$66_objUid$$] : $JSCompiler_alias_NULL$$
1212}
1213function $goog$events$fireListeners_$$($listenerArray$$5_map$$4$$, $obj$$69_objUid$$2$$, $type$$69$$, $capture$$9$$, $eventObject$$4$$) {
1214 var $retval$$ = 1, $obj$$69_objUid$$2$$ = $goog$getUid$$($obj$$69_objUid$$2$$);
1215 if($listenerArray$$5_map$$4$$[$obj$$69_objUid$$2$$]) {
1216 $listenerArray$$5_map$$4$$.$remaining_$--;
1217 $listenerArray$$5_map$$4$$ = $listenerArray$$5_map$$4$$[$obj$$69_objUid$$2$$];
1218 $listenerArray$$5_map$$4$$.$locked_$ ? $listenerArray$$5_map$$4$$.$locked_$++ : $listenerArray$$5_map$$4$$.$locked_$ = 1;
1219 try {
1220 for(var $length$$20$$ = $listenerArray$$5_map$$4$$.length, $i$$73$$ = 0;$i$$73$$ < $length$$20$$;$i$$73$$++) {
1221 var $listener$$43$$ = $listenerArray$$5_map$$4$$[$i$$73$$];
1222 $listener$$43$$ && !$listener$$43$$.$removed$ && ($retval$$ &= $goog$events$fireListener$$($listener$$43$$, $eventObject$$4$$) !== $JSCompiler_alias_FALSE$$)
1223 }
1224 }finally {
1225 $listenerArray$$5_map$$4$$.$locked_$--, $goog$events$cleanUp_$$($type$$69$$, $capture$$9$$, $obj$$69_objUid$$2$$, $listenerArray$$5_map$$4$$)
1226 }
1227 }
1228 return Boolean($retval$$)
1229}
1230function $goog$events$fireListener$$($listener$$44$$, $eventObject$$5$$) {
1231 $listener$$44$$.$callOnce$ && $goog$events$unlistenByKey$$($listener$$44$$.key);
1232 return $listener$$44$$.handleEvent($eventObject$$5$$)
1233}
1234function $goog$events$handleBrowserEvent_$$($key$$47$$, $opt_evt$$) {
1235 if(!$goog$events$listeners_$$[$key$$47$$]) {
1236 return $JSCompiler_alias_TRUE$$
1237 }
1238 var $listener$$45$$ = $goog$events$listeners_$$[$key$$47$$], $be$$1_type$$71$$ = $listener$$45$$.type, $map$$6$$ = $goog$events$listenerTree_$$;
1239 if(!($be$$1_type$$71$$ in $map$$6$$)) {
1240 return $JSCompiler_alias_TRUE$$
1241 }
1242 var $map$$6$$ = $map$$6$$[$be$$1_type$$71$$], $ieEvent_part$$inline_394_retval$$1$$, $targetsMap$$1$$;
1243 if(!$goog$events$BrowserFeature$HAS_W3C_EVENT_SUPPORT$$) {
1244 var $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$;
1245 if(!($JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$ = $opt_evt$$)) {
1246 a: {
1247 $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$ = ["window", "event"];
1248 for(var $cur$$inline_393_hasBubble$$1$$ = $goog$global$$;$ieEvent_part$$inline_394_retval$$1$$ = $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$.shift();) {
1249 if($cur$$inline_393_hasBubble$$1$$[$ieEvent_part$$inline_394_retval$$1$$] != $JSCompiler_alias_NULL$$) {
1250 $cur$$inline_393_hasBubble$$1$$ = $cur$$inline_393_hasBubble$$1$$[$ieEvent_part$$inline_394_retval$$1$$]
1251 }else {
1252 $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$ = $JSCompiler_alias_NULL$$;
1253 break a
1254 }
1255 }
1256 $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$ = $cur$$inline_393_hasBubble$$1$$
1257 }
1258 }
1259 $ieEvent_part$$inline_394_retval$$1$$ = $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$;
1260 $JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$ = $JSCompiler_alias_TRUE$$ in $map$$6$$;
1261 $cur$$inline_393_hasBubble$$1$$ = $JSCompiler_alias_FALSE$$ in $map$$6$$;
1262 if($JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$) {
1263 if(0 > $ieEvent_part$$inline_394_retval$$1$$.keyCode || $ieEvent_part$$inline_394_retval$$1$$.returnValue != $JSCompiler_alias_VOID$$) {
1264 return $JSCompiler_alias_TRUE$$
1265 }
1266 a: {
1267 var $evt$$15_useReturnValue$$inline_397$$ = $JSCompiler_alias_FALSE$$;
1268 if(0 == $ieEvent_part$$inline_394_retval$$1$$.keyCode) {
1269 try {
1270 $ieEvent_part$$inline_394_retval$$1$$.keyCode = -1;
1271 break a
1272 }catch($ex$$inline_398$$) {
1273 $evt$$15_useReturnValue$$inline_397$$ = $JSCompiler_alias_TRUE$$
1274 }
1275 }
1276 if($evt$$15_useReturnValue$$inline_397$$ || $ieEvent_part$$inline_394_retval$$1$$.returnValue == $JSCompiler_alias_VOID$$) {
1277 $ieEvent_part$$inline_394_retval$$1$$.returnValue = $JSCompiler_alias_TRUE$$
1278 }
1279 }
1280 }
1281 $evt$$15_useReturnValue$$inline_397$$ = new $goog$events$BrowserEvent$$;
1282 $evt$$15_useReturnValue$$inline_397$$.init($ieEvent_part$$inline_394_retval$$1$$, this);
1283 $ieEvent_part$$inline_394_retval$$1$$ = $JSCompiler_alias_TRUE$$;
1284 try {
1285 if($JSCompiler_temp$$22_hasCapture$$2_parts$$inline_392$$) {
1286 for(var $ancestors$$2$$ = [], $parent$$17$$ = $evt$$15_useReturnValue$$inline_397$$.currentTarget;$parent$$17$$;$parent$$17$$ = $parent$$17$$.parentNode) {
1287 $ancestors$$2$$.push($parent$$17$$)
1288 }
1289 $targetsMap$$1$$ = $map$$6$$[$JSCompiler_alias_TRUE$$];
1290 $targetsMap$$1$$.$remaining_$ = $targetsMap$$1$$.$count_$;
1291 for(var $i$$75$$ = $ancestors$$2$$.length - 1;!$evt$$15_useReturnValue$$inline_397$$.$propagationStopped_$ && 0 <= $i$$75$$ && $targetsMap$$1$$.$remaining_$;$i$$75$$--) {
1292 $evt$$15_useReturnValue$$inline_397$$.currentTarget = $ancestors$$2$$[$i$$75$$], $ieEvent_part$$inline_394_retval$$1$$ &= $goog$events$fireListeners_$$($targetsMap$$1$$, $ancestors$$2$$[$i$$75$$], $be$$1_type$$71$$, $JSCompiler_alias_TRUE$$, $evt$$15_useReturnValue$$inline_397$$)
1293 }
1294 if($cur$$inline_393_hasBubble$$1$$) {
1295 $targetsMap$$1$$ = $map$$6$$[$JSCompiler_alias_FALSE$$];
1296 $targetsMap$$1$$.$remaining_$ = $targetsMap$$1$$.$count_$;
1297 for($i$$75$$ = 0;!$evt$$15_useReturnValue$$inline_397$$.$propagationStopped_$ && $i$$75$$ < $ancestors$$2$$.length && $targetsMap$$1$$.$remaining_$;$i$$75$$++) {
1298 $evt$$15_useReturnValue$$inline_397$$.currentTarget = $ancestors$$2$$[$i$$75$$], $ieEvent_part$$inline_394_retval$$1$$ &= $goog$events$fireListeners_$$($targetsMap$$1$$, $ancestors$$2$$[$i$$75$$], $be$$1_type$$71$$, $JSCompiler_alias_FALSE$$, $evt$$15_useReturnValue$$inline_397$$)
1299 }
1300 }
1301 }else {
1302 $ieEvent_part$$inline_394_retval$$1$$ = $goog$events$fireListener$$($listener$$45$$, $evt$$15_useReturnValue$$inline_397$$)
1303 }
1304 }finally {
1305 $ancestors$$2$$ && ($ancestors$$2$$.length = 0)
1306 }
1307 return $ieEvent_part$$inline_394_retval$$1$$
1308 }
1309 $be$$1_type$$71$$ = new $goog$events$BrowserEvent$$($opt_evt$$, this);
1310 return $ieEvent_part$$inline_394_retval$$1$$ = $goog$events$fireListener$$($listener$$45$$, $be$$1_type$$71$$)
1311}
1312;function $goog$events$EventHandler$$($opt_handler$$7$$) {
1313 $goog$Disposable$$.call(this);
1314 this.$handler_$ = $opt_handler$$7$$;
1315 this.$keys_$ = []
1316}
1317$goog$inherits$$($goog$events$EventHandler$$, $goog$Disposable$$);
1318var $goog$events$EventHandler$typeArray_$$ = [];
1319function $JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$self$$, $src$$15$$, $type$$72$$, $opt_fn$$, $opt_capture$$1$$) {
1320 $goog$isArray$$($type$$72$$) || ($goog$events$EventHandler$typeArray_$$[0] = $type$$72$$, $type$$72$$ = $goog$events$EventHandler$typeArray_$$);
1321 for(var $i$$76$$ = 0;$i$$76$$ < $type$$72$$.length;$i$$76$$++) {
1322 var $key$$48$$ = $goog$events$listen$$($src$$15$$, $type$$72$$[$i$$76$$], $opt_fn$$ || $JSCompiler_StaticMethods_listen$self$$, $opt_capture$$1$$ || $JSCompiler_alias_FALSE$$, $JSCompiler_StaticMethods_listen$self$$.$handler_$ || $JSCompiler_StaticMethods_listen$self$$);
1323 $JSCompiler_StaticMethods_listen$self$$.$keys_$.push($key$$48$$)
1324 }
1325 return $JSCompiler_StaticMethods_listen$self$$
1326}
1327function $JSCompiler_StaticMethods_unlisten$$($JSCompiler_StaticMethods_unlisten$self$$, $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$, $i$$inline_408_type$$74$$, $listener$$inline_403_opt_fn$$2$$, $capture$$inline_406_opt_capture$$3$$, $opt_handler$$11_opt_handler$$inline_405$$) {
1328 if($goog$isArray$$($i$$inline_408_type$$74$$)) {
1329 for(var $i$$78$$ = 0;$i$$78$$ < $i$$inline_408_type$$74$$.length;$i$$78$$++) {
1330 $JSCompiler_StaticMethods_unlisten$$($JSCompiler_StaticMethods_unlisten$self$$, $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$, $i$$inline_408_type$$74$$[$i$$78$$], $listener$$inline_403_opt_fn$$2$$, $capture$$inline_406_opt_capture$$3$$, $opt_handler$$11_opt_handler$$inline_405$$)
1331 }
1332 }else {
1333 a: {
1334 $listener$$inline_403_opt_fn$$2$$ = $listener$$inline_403_opt_fn$$2$$ || $JSCompiler_StaticMethods_unlisten$self$$;
1335 $opt_handler$$11_opt_handler$$inline_405$$ = $opt_handler$$11_opt_handler$$inline_405$$ || $JSCompiler_StaticMethods_unlisten$self$$.$handler_$ || $JSCompiler_StaticMethods_unlisten$self$$;
1336 $capture$$inline_406_opt_capture$$3$$ = !!$capture$$inline_406_opt_capture$$3$$;
1337 if($key$$50_listener$$47_listenerArray$$inline_407_src$$18$$ = $goog$events$getListeners_$$($key$$50_listener$$47_listenerArray$$inline_407_src$$18$$, $i$$inline_408_type$$74$$, $capture$$inline_406_opt_capture$$3$$)) {
1338 for($i$$inline_408_type$$74$$ = 0;$i$$inline_408_type$$74$$ < $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$.length;$i$$inline_408_type$$74$$++) {
1339 if(!$key$$50_listener$$47_listenerArray$$inline_407_src$$18$$[$i$$inline_408_type$$74$$].$removed$ && $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$[$i$$inline_408_type$$74$$].$listener$ == $listener$$inline_403_opt_fn$$2$$ && $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$[$i$$inline_408_type$$74$$].capture == $capture$$inline_406_opt_capture$$3$$ && $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$[$i$$inline_408_type$$74$$].$handler$ == $opt_handler$$11_opt_handler$$inline_405$$) {
1340 $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$ = $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$[$i$$inline_408_type$$74$$];
1341 break a
1342 }
1343 }
1344 }
1345 $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$ = $JSCompiler_alias_NULL$$
1346 }
1347 $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$ && ($key$$50_listener$$47_listenerArray$$inline_407_src$$18$$ = $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$.key, $goog$events$unlistenByKey$$($key$$50_listener$$47_listenerArray$$inline_407_src$$18$$), $goog$array$remove$$($JSCompiler_StaticMethods_unlisten$self$$.$keys_$, $key$$50_listener$$47_listenerArray$$inline_407_src$$18$$))
1348 }
1349 return $JSCompiler_StaticMethods_unlisten$self$$
1350}
1351$goog$events$EventHandler$$.prototype.$removeAll$ = function $$goog$events$EventHandler$$$$$removeAll$$() {
1352 $goog$array$forEach$$(this.$keys_$, $goog$events$unlistenByKey$$);
1353 this.$keys_$.length = 0
1354};
1355$goog$events$EventHandler$$.prototype.handleEvent = function $$goog$events$EventHandler$$$$handleEvent$() {
1356 $JSCompiler_alias_THROW$$(Error("EventHandler.handleEvent not implemented"))
1357};
1358function $goog$events$EventTarget$$() {
1359 $goog$Disposable$$.call(this)
1360}
1361$goog$inherits$$($goog$events$EventTarget$$, $goog$Disposable$$);
1362$JSCompiler_prototypeAlias$$ = $goog$events$EventTarget$$.prototype;
1363$JSCompiler_prototypeAlias$$.$customEvent_$ = $JSCompiler_alias_TRUE$$;
1364$JSCompiler_prototypeAlias$$.$parentEventTarget_$ = $JSCompiler_alias_NULL$$;
1365$JSCompiler_prototypeAlias$$.$setParentEventTarget$ = function $$JSCompiler_prototypeAlias$$$$setParentEventTarget$$($parent$$18$$) {
1366 this.$parentEventTarget_$ = $parent$$18$$
1367};
1368$JSCompiler_prototypeAlias$$.addEventListener = function $$JSCompiler_prototypeAlias$$$addEventListener$($type$$75$$, $handler$$3$$, $opt_capture$$4$$, $opt_handlerScope$$) {
1369 $goog$events$listen$$(this, $type$$75$$, $handler$$3$$, $opt_capture$$4$$, $opt_handlerScope$$)
1370};
1371$JSCompiler_prototypeAlias$$.removeEventListener = function $$JSCompiler_prototypeAlias$$$removeEventListener$($type$$76$$, $handler$$4$$, $opt_capture$$5$$, $opt_handlerScope$$1$$) {
1372 $goog$events$unlisten$$(this, $type$$76$$, $handler$$4$$, $opt_capture$$5$$, $opt_handlerScope$$1$$)
1373};
1374$JSCompiler_prototypeAlias$$.dispatchEvent = function $$JSCompiler_prototypeAlias$$$dispatchEvent$($JSCompiler_inline_result$$28_e$$23_e$$inline_411$$) {
1375 var $hasCapture$$inline_417_type$$inline_412$$ = $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.type || $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$, $map$$inline_413$$ = $goog$events$listenerTree_$$;
1376 if($hasCapture$$inline_417_type$$inline_412$$ in $map$$inline_413$$) {
1377 if($goog$isString$$($JSCompiler_inline_result$$28_e$$23_e$$inline_411$$)) {
1378 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$ = new $goog$events$Event$$($JSCompiler_inline_result$$28_e$$23_e$$inline_411$$, this)
1379 }else {
1380 if($JSCompiler_inline_result$$28_e$$23_e$$inline_411$$ instanceof $goog$events$Event$$) {
1381 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.target = $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.target || this
1382 }else {
1383 var $oldEvent$$inline_414_rv$$inline_415$$ = $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$, $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$ = new $goog$events$Event$$($hasCapture$$inline_417_type$$inline_412$$, this);
1384 $goog$object$extend$$($JSCompiler_inline_result$$28_e$$23_e$$inline_411$$, $oldEvent$$inline_414_rv$$inline_415$$)
1385 }
1386 }
1387 var $oldEvent$$inline_414_rv$$inline_415$$ = 1, $ancestors$$inline_416_current$$inline_421$$, $map$$inline_413$$ = $map$$inline_413$$[$hasCapture$$inline_417_type$$inline_412$$], $hasCapture$$inline_417_type$$inline_412$$ = $JSCompiler_alias_TRUE$$ in $map$$inline_413$$, $parent$$inline_419_targetsMap$$inline_418$$;
1388 if($hasCapture$$inline_417_type$$inline_412$$) {
1389 $ancestors$$inline_416_current$$inline_421$$ = [];
1390 for($parent$$inline_419_targetsMap$$inline_418$$ = this;$parent$$inline_419_targetsMap$$inline_418$$;$parent$$inline_419_targetsMap$$inline_418$$ = $parent$$inline_419_targetsMap$$inline_418$$.$parentEventTarget_$) {
1391 $ancestors$$inline_416_current$$inline_421$$.push($parent$$inline_419_targetsMap$$inline_418$$)
1392 }
1393 $parent$$inline_419_targetsMap$$inline_418$$ = $map$$inline_413$$[$JSCompiler_alias_TRUE$$];
1394 $parent$$inline_419_targetsMap$$inline_418$$.$remaining_$ = $parent$$inline_419_targetsMap$$inline_418$$.$count_$;
1395 for(var $i$$inline_420$$ = $ancestors$$inline_416_current$$inline_421$$.length - 1;!$JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$propagationStopped_$ && 0 <= $i$$inline_420$$ && $parent$$inline_419_targetsMap$$inline_418$$.$remaining_$;$i$$inline_420$$--) {
1396 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.currentTarget = $ancestors$$inline_416_current$$inline_421$$[$i$$inline_420$$], $oldEvent$$inline_414_rv$$inline_415$$ &= $goog$events$fireListeners_$$($parent$$inline_419_targetsMap$$inline_418$$, $ancestors$$inline_416_current$$inline_421$$[$i$$inline_420$$], $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.type, $JSCompiler_alias_TRUE$$, $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$) && $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$returnValue_$ !=
1397 $JSCompiler_alias_FALSE$$
1398 }
1399 }
1400 if($JSCompiler_alias_FALSE$$ in $map$$inline_413$$) {
1401 if($parent$$inline_419_targetsMap$$inline_418$$ = $map$$inline_413$$[$JSCompiler_alias_FALSE$$], $parent$$inline_419_targetsMap$$inline_418$$.$remaining_$ = $parent$$inline_419_targetsMap$$inline_418$$.$count_$, $hasCapture$$inline_417_type$$inline_412$$) {
1402 for($i$$inline_420$$ = 0;!$JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$propagationStopped_$ && $i$$inline_420$$ < $ancestors$$inline_416_current$$inline_421$$.length && $parent$$inline_419_targetsMap$$inline_418$$.$remaining_$;$i$$inline_420$$++) {
1403 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.currentTarget = $ancestors$$inline_416_current$$inline_421$$[$i$$inline_420$$], $oldEvent$$inline_414_rv$$inline_415$$ &= $goog$events$fireListeners_$$($parent$$inline_419_targetsMap$$inline_418$$, $ancestors$$inline_416_current$$inline_421$$[$i$$inline_420$$], $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.type, $JSCompiler_alias_FALSE$$, $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$) && $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$returnValue_$ !=
1404 $JSCompiler_alias_FALSE$$
1405 }
1406 }else {
1407 for($ancestors$$inline_416_current$$inline_421$$ = this;!$JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$propagationStopped_$ && $ancestors$$inline_416_current$$inline_421$$ && $parent$$inline_419_targetsMap$$inline_418$$.$remaining_$;$ancestors$$inline_416_current$$inline_421$$ = $ancestors$$inline_416_current$$inline_421$$.$parentEventTarget_$) {
1408 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.currentTarget = $ancestors$$inline_416_current$$inline_421$$, $oldEvent$$inline_414_rv$$inline_415$$ &= $goog$events$fireListeners_$$($parent$$inline_419_targetsMap$$inline_418$$, $ancestors$$inline_416_current$$inline_421$$, $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.type, $JSCompiler_alias_FALSE$$, $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$) && $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$.$returnValue_$ != $JSCompiler_alias_FALSE$$
1409 }
1410 }
1411 }
1412 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$ = Boolean($oldEvent$$inline_414_rv$$inline_415$$)
1413 }else {
1414 $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$ = $JSCompiler_alias_TRUE$$
1415 }
1416 return $JSCompiler_inline_result$$28_e$$23_e$$inline_411$$
1417};
1418function $goog$math$Box$$($top$$3$$, $right$$6$$, $bottom$$2$$, $left$$6$$) {
1419 this.top = $top$$3$$;
1420 this.right = $right$$6$$;
1421 this.bottom = $bottom$$2$$;
1422 this.left = $left$$6$$
1423}
1424$goog$math$Box$$.prototype.contains = function $$goog$math$Box$$$$contains$($other$$4$$) {
1425 return!this || !$other$$4$$ ? $JSCompiler_alias_FALSE$$ : $other$$4$$ instanceof $goog$math$Box$$ ? $other$$4$$.left >= this.left && $other$$4$$.right <= this.right && $other$$4$$.top >= this.top && $other$$4$$.bottom <= this.bottom : $other$$4$$.x >= this.left && $other$$4$$.x <= this.right && $other$$4$$.y >= this.top && $other$$4$$.y <= this.bottom
1426};
1427function $goog$math$Rect$$($x$$69$$, $y$$38$$, $w$$5$$, $h$$4$$) {
1428 this.left = $x$$69$$;
1429 this.top = $y$$38$$;
1430 this.width = $w$$5$$;
1431 this.height = $h$$4$$
1432}
1433$goog$math$Rect$$.prototype.contains = function $$goog$math$Rect$$$$contains$($another$$) {
1434 return $another$$ instanceof $goog$math$Rect$$ ? this.left <= $another$$.left && this.left + this.width >= $another$$.left + $another$$.width && this.top <= $another$$.top && this.top + this.height >= $another$$.top + $another$$.height : $another$$.x >= this.left && $another$$.x <= this.left + this.width && $another$$.y >= this.top && $another$$.y <= this.top + this.height
1435};
1436function $goog$style$setStyle$$($element$$29$$, $style$$, $opt_value$$5$$) {
1437 $goog$isString$$($style$$) ? $goog$style$setStyle_$$($element$$29$$, $opt_value$$5$$, $style$$) : $goog$object$forEach$$($style$$, $goog$partial$$($goog$style$setStyle_$$, $element$$29$$))
1438}
1439function $goog$style$setStyle_$$($element$$30$$, $value$$65$$, $style$$1$$) {
1440 $element$$30$$.style[$goog$string$toCamelCase$$($style$$1$$)] = $value$$65$$
1441}
1442function $goog$style$getComputedStyle$$($element$$32$$, $property$$4$$) {
1443 var $doc$$23_styles$$ = $goog$dom$getOwnerDocument$$($element$$32$$);
1444 return $doc$$23_styles$$.defaultView && $doc$$23_styles$$.defaultView.getComputedStyle && ($doc$$23_styles$$ = $doc$$23_styles$$.defaultView.getComputedStyle($element$$32$$, $JSCompiler_alias_NULL$$)) ? $doc$$23_styles$$[$property$$4$$] || $doc$$23_styles$$.getPropertyValue($property$$4$$) || "" : ""
1445}
1446function $goog$style$getCascadedStyle$$($element$$33$$, $style$$2$$) {
1447 return $element$$33$$.currentStyle ? $element$$33$$.currentStyle[$style$$2$$] : $JSCompiler_alias_NULL$$
1448}
1449function $goog$style$getStyle_$$($element$$34$$, $style$$3$$) {
1450 return $goog$style$getComputedStyle$$($element$$34$$, $style$$3$$) || $goog$style$getCascadedStyle$$($element$$34$$, $style$$3$$) || $element$$34$$.style && $element$$34$$.style[$style$$3$$]
1451}
1452function $goog$style$setPosition$$($el$$4$$, $arg1_y$$39$$, $opt_arg2$$) {
1453 var $x$$70$$, $buggyGeckoSubPixelPos$$ = $goog$userAgent$GECKO$$ && ($goog$userAgent$detectedMac_$$ || $goog$userAgent$X11$$) && $goog$userAgent$isVersion$$("1.9");
1454 $arg1_y$$39$$ instanceof $goog$math$Coordinate$$ ? ($x$$70$$ = $arg1_y$$39$$.x, $arg1_y$$39$$ = $arg1_y$$39$$.y) : ($x$$70$$ = $arg1_y$$39$$, $arg1_y$$39$$ = $opt_arg2$$);
1455 $el$$4$$.style.left = $goog$style$getPixelStyleValue_$$($x$$70$$, $buggyGeckoSubPixelPos$$);
1456 $el$$4$$.style.top = $goog$style$getPixelStyleValue_$$($arg1_y$$39$$, $buggyGeckoSubPixelPos$$)
1457}
1458function $goog$style$getBoundingClientRect_$$($doc$$26_el$$5$$) {
1459 var $rect$$4$$ = $doc$$26_el$$5$$.getBoundingClientRect();
1460 $goog$userAgent$IE$$ && ($doc$$26_el$$5$$ = $doc$$26_el$$5$$.ownerDocument, $rect$$4$$.left -= $doc$$26_el$$5$$.documentElement.clientLeft + $doc$$26_el$$5$$.body.clientLeft, $rect$$4$$.top -= $doc$$26_el$$5$$.documentElement.clientTop + $doc$$26_el$$5$$.body.clientTop);
1461 return $rect$$4$$
1462}
1463function $goog$style$getOffsetParent$$($element$$43_parent$$19$$) {
1464 if($goog$userAgent$IE$$ && !$goog$userAgent$isDocumentMode$$(8)) {
1465 return $element$$43_parent$$19$$.offsetParent
1466 }
1467 for(var $doc$$27$$ = $goog$dom$getOwnerDocument$$($element$$43_parent$$19$$), $positionStyle$$ = $goog$style$getStyle_$$($element$$43_parent$$19$$, "position"), $skipStatic$$ = "fixed" == $positionStyle$$ || "absolute" == $positionStyle$$, $element$$43_parent$$19$$ = $element$$43_parent$$19$$.parentNode;$element$$43_parent$$19$$ && $element$$43_parent$$19$$ != $doc$$27$$;$element$$43_parent$$19$$ = $element$$43_parent$$19$$.parentNode) {
1468 if($positionStyle$$ = $goog$style$getStyle_$$($element$$43_parent$$19$$, "position"), $skipStatic$$ = $skipStatic$$ && "static" == $positionStyle$$ && $element$$43_parent$$19$$ != $doc$$27$$.documentElement && $element$$43_parent$$19$$ != $doc$$27$$.body, !$skipStatic$$ && ($element$$43_parent$$19$$.scrollWidth > $element$$43_parent$$19$$.clientWidth || $element$$43_parent$$19$$.scrollHeight > $element$$43_parent$$19$$.clientHeight || "fixed" == $positionStyle$$ || "absolute" == $positionStyle$$ ||
1469 "relative" == $positionStyle$$)) {
1470 return $element$$43_parent$$19$$
1471 }
1472 }
1473 return $JSCompiler_alias_NULL$$
1474}
1475function $goog$style$getPageOffset$$($el$$8_scrollCoord_vpBox$$) {
1476 var $box$$7_doc$$inline_425$$, $doc$$28$$ = $goog$dom$getOwnerDocument$$($el$$8_scrollCoord_vpBox$$), $positionStyle$$1$$ = $goog$style$getStyle_$$($el$$8_scrollCoord_vpBox$$, "position"), $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ = $goog$userAgent$GECKO$$ && $doc$$28$$.getBoxObjectFor && !$el$$8_scrollCoord_vpBox$$.getBoundingClientRect && "absolute" == $positionStyle$$1$$ && ($box$$7_doc$$inline_425$$ = $doc$$28$$.getBoxObjectFor($el$$8_scrollCoord_vpBox$$)) && (0 > $box$$7_doc$$inline_425$$.screenX ||
1477 0 > $box$$7_doc$$inline_425$$.screenY), $pos$$2$$ = new $goog$math$Coordinate$$(0, 0), $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$;
1478 $box$$7_doc$$inline_425$$ = $doc$$28$$ ? $goog$dom$getOwnerDocument$$($doc$$28$$) : document;
1479 if($JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$ = $goog$userAgent$IE$$) {
1480 if($JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$ = !$goog$userAgent$isDocumentMode$$(9)) {
1481 $goog$dom$getDomHelper$$($box$$7_doc$$inline_425$$), $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$ = $JSCompiler_alias_FALSE$$
1482 }
1483 }
1484 $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$ = $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$ ? $box$$7_doc$$inline_425$$.body : $box$$7_doc$$inline_425$$.documentElement;
1485 if($el$$8_scrollCoord_vpBox$$ == $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$) {
1486 return $pos$$2$$
1487 }
1488 if($el$$8_scrollCoord_vpBox$$.getBoundingClientRect) {
1489 $box$$7_doc$$inline_425$$ = $goog$style$getBoundingClientRect_$$($el$$8_scrollCoord_vpBox$$), $el$$8_scrollCoord_vpBox$$ = $JSCompiler_StaticMethods_getDocumentScroll$$($goog$dom$getDomHelper$$($doc$$28$$)), $pos$$2$$.x = $box$$7_doc$$inline_425$$.left + $el$$8_scrollCoord_vpBox$$.x, $pos$$2$$.y = $box$$7_doc$$inline_425$$.top + $el$$8_scrollCoord_vpBox$$.y
1490 }else {
1491 if($doc$$28$$.getBoxObjectFor && !$BUGGY_GECKO_BOX_OBJECT_parent$$20$$) {
1492 $box$$7_doc$$inline_425$$ = $doc$$28$$.getBoxObjectFor($el$$8_scrollCoord_vpBox$$), $el$$8_scrollCoord_vpBox$$ = $doc$$28$$.getBoxObjectFor($JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$), $pos$$2$$.x = $box$$7_doc$$inline_425$$.screenX - $el$$8_scrollCoord_vpBox$$.screenX, $pos$$2$$.y = $box$$7_doc$$inline_425$$.screenY - $el$$8_scrollCoord_vpBox$$.screenY
1493 }else {
1494 $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ = $el$$8_scrollCoord_vpBox$$;
1495 do {
1496 $pos$$2$$.x += $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.offsetLeft;
1497 $pos$$2$$.y += $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.offsetTop;
1498 $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ != $el$$8_scrollCoord_vpBox$$ && ($pos$$2$$.x += $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.clientLeft || 0, $pos$$2$$.y += $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.clientTop || 0);
1499 if($goog$userAgent$WEBKIT$$ && "fixed" == $goog$style$getStyle_$$($BUGGY_GECKO_BOX_OBJECT_parent$$20$$, "position")) {
1500 $pos$$2$$.x += $doc$$28$$.body.scrollLeft;
1501 $pos$$2$$.y += $doc$$28$$.body.scrollTop;
1502 break
1503 }
1504 $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ = $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.offsetParent
1505 }while($BUGGY_GECKO_BOX_OBJECT_parent$$20$$ && $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ != $el$$8_scrollCoord_vpBox$$);
1506 if($goog$userAgent$OPERA$$ || $goog$userAgent$WEBKIT$$ && "absolute" == $positionStyle$$1$$) {
1507 $pos$$2$$.y -= $doc$$28$$.body.offsetTop
1508 }
1509 for($BUGGY_GECKO_BOX_OBJECT_parent$$20$$ = $el$$8_scrollCoord_vpBox$$;($BUGGY_GECKO_BOX_OBJECT_parent$$20$$ = $goog$style$getOffsetParent$$($BUGGY_GECKO_BOX_OBJECT_parent$$20$$)) && $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ != $doc$$28$$.body && $BUGGY_GECKO_BOX_OBJECT_parent$$20$$ != $JSCompiler_temp$$798_JSCompiler_temp$$799_viewportElement$$;) {
1510 if($pos$$2$$.x -= $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.scrollLeft, !$goog$userAgent$OPERA$$ || "TR" != $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.tagName) {
1511 $pos$$2$$.y -= $BUGGY_GECKO_BOX_OBJECT_parent$$20$$.scrollTop
1512 }
1513 }
1514 }
1515 }
1516 return $pos$$2$$
1517}
1518function $goog$style$getRelativePosition$$($a$$28$$, $b$$23$$) {
1519 var $ap$$ = $goog$style$getClientPosition$$($a$$28$$), $bp$$ = $goog$style$getClientPosition$$($b$$23$$);
1520 return new $goog$math$Coordinate$$($ap$$.x - $bp$$.x, $ap$$.y - $bp$$.y)
1521}
1522function $goog$style$getClientPosition$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$) {
1523 var $JSCompiler_temp_const$$38_pos$$4$$ = new $goog$math$Coordinate$$;
1524 if(1 == $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.nodeType) {
1525 if($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.getBoundingClientRect) {
1526 var $box$$8_scrollCoord$$1$$ = $goog$style$getBoundingClientRect_$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$);
1527 $JSCompiler_temp_const$$38_pos$$4$$.x = $box$$8_scrollCoord$$1$$.left;
1528 $JSCompiler_temp_const$$38_pos$$4$$.y = $box$$8_scrollCoord$$1$$.top
1529 }else {
1530 var $box$$8_scrollCoord$$1$$ = $JSCompiler_StaticMethods_getDocumentScroll$$($goog$dom$getDomHelper$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$)), $pageCoord$$ = $goog$style$getPageOffset$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$);
1531 $JSCompiler_temp_const$$38_pos$$4$$.x = $pageCoord$$.x - $box$$8_scrollCoord$$1$$.x;
1532 $JSCompiler_temp_const$$38_pos$$4$$.y = $pageCoord$$.y - $box$$8_scrollCoord$$1$$.y
1533 }
1534 if($goog$userAgent$GECKO$$ && !$goog$userAgent$isVersion$$(12)) {
1535 var $isAbstractedEvent_property$$inline_428$$;
1536 $goog$userAgent$IE$$ ? $isAbstractedEvent_property$$inline_428$$ = "-ms-transform" : $goog$userAgent$WEBKIT$$ ? $isAbstractedEvent_property$$inline_428$$ = "-webkit-transform" : $goog$userAgent$OPERA$$ ? $isAbstractedEvent_property$$inline_428$$ = "-o-transform" : $goog$userAgent$GECKO$$ && ($isAbstractedEvent_property$$inline_428$$ = "-moz-transform");
1537 var $targetEvent_transform$$inline_429$$;
1538 $isAbstractedEvent_property$$inline_428$$ && ($targetEvent_transform$$inline_429$$ = $goog$style$getStyle_$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$, $isAbstractedEvent_property$$inline_428$$));
1539 $targetEvent_transform$$inline_429$$ || ($targetEvent_transform$$inline_429$$ = $goog$style$getStyle_$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$, "transform"));
1540 $targetEvent_transform$$inline_429$$ ? ($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$ = $targetEvent_transform$$inline_429$$.match($goog$style$MATRIX_TRANSLATION_REGEX_$$), $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$ = !$JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$ ? new $goog$math$Coordinate$$(0, 0) : new $goog$math$Coordinate$$(parseFloat($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$[1]), parseFloat($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$[2]))) :
1541 $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$ = new $goog$math$Coordinate$$(0, 0);
1542 $JSCompiler_temp_const$$38_pos$$4$$ = new $goog$math$Coordinate$$($JSCompiler_temp_const$$38_pos$$4$$.x + $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.x, $JSCompiler_temp_const$$38_pos$$4$$.y + $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.y)
1543 }
1544 }else {
1545 $isAbstractedEvent_property$$inline_428$$ = $goog$isFunction$$($JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.$getBrowserEvent$), $targetEvent_transform$$inline_429$$ = $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$, $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.targetTouches ? $targetEvent_transform$$inline_429$$ = $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.targetTouches[0] : $isAbstractedEvent_property$$inline_428$$ && $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.$event_$.targetTouches &&
1546 ($targetEvent_transform$$inline_429$$ = $JSCompiler_inline_result$$39_el$$12_matches$$inline_430$$.$event_$.targetTouches[0]), $JSCompiler_temp_const$$38_pos$$4$$.x = $targetEvent_transform$$inline_429$$.clientX, $JSCompiler_temp_const$$38_pos$$4$$.y = $targetEvent_transform$$inline_429$$.clientY
1547 }
1548 return $JSCompiler_temp_const$$38_pos$$4$$
1549}
1550function $goog$style$setSize$$($element$$47$$, $w$$6$$, $h$$5_opt_h$$) {
1551 $w$$6$$ instanceof $goog$math$Size$$ ? ($h$$5_opt_h$$ = $w$$6$$.height, $w$$6$$ = $w$$6$$.width) : $h$$5_opt_h$$ == $JSCompiler_alias_VOID$$ && $JSCompiler_alias_THROW$$(Error("missing height argument"));
1552 $element$$47$$.style.width = $goog$style$getPixelStyleValue_$$($w$$6$$, $JSCompiler_alias_TRUE$$);
1553 $element$$47$$.style.height = $goog$style$getPixelStyleValue_$$($h$$5_opt_h$$, $JSCompiler_alias_TRUE$$)
1554}
1555function $goog$style$getPixelStyleValue_$$($value$$66$$, $round$$) {
1556 "number" == typeof $value$$66$$ && ($value$$66$$ = ($round$$ ? Math.round($value$$66$$) : $value$$66$$) + "px");
1557 return $value$$66$$
1558}
1559function $goog$style$getSize$$($element$$50_size$$10$$) {
1560 if("none" != $goog$style$getStyle_$$($element$$50_size$$10$$, "display")) {
1561 return $goog$style$getSizeWithDisplay_$$($element$$50_size$$10$$)
1562 }
1563 var $style$$4$$ = $element$$50_size$$10$$.style, $originalDisplay$$ = $style$$4$$.display, $originalVisibility$$ = $style$$4$$.visibility, $originalPosition$$ = $style$$4$$.position;
1564 $style$$4$$.visibility = "hidden";
1565 $style$$4$$.position = "absolute";
1566 $style$$4$$.display = "inline";
1567 $element$$50_size$$10$$ = $goog$style$getSizeWithDisplay_$$($element$$50_size$$10$$);
1568 $style$$4$$.display = $originalDisplay$$;
1569 $style$$4$$.position = $originalPosition$$;
1570 $style$$4$$.visibility = $originalVisibility$$;
1571 return $element$$50_size$$10$$
1572}
1573function $goog$style$getSizeWithDisplay_$$($clientRect_element$$51$$) {
1574 var $offsetWidth$$ = $clientRect_element$$51$$.offsetWidth, $offsetHeight$$ = $clientRect_element$$51$$.offsetHeight, $webkitOffsetsZero$$ = $goog$userAgent$WEBKIT$$ && !$offsetWidth$$ && !$offsetHeight$$;
1575 return(!$goog$isDef$$($offsetWidth$$) || $webkitOffsetsZero$$) && $clientRect_element$$51$$.getBoundingClientRect ? ($clientRect_element$$51$$ = $goog$style$getBoundingClientRect_$$($clientRect_element$$51$$), new $goog$math$Size$$($clientRect_element$$51$$.right - $clientRect_element$$51$$.left, $clientRect_element$$51$$.bottom - $clientRect_element$$51$$.top)) : new $goog$math$Size$$($offsetWidth$$, $offsetHeight$$)
1576}
1577function $goog$style$getBounds$$($element$$52_s$$18$$) {
1578 var $o$$1$$ = $goog$style$getPageOffset$$($element$$52_s$$18$$), $element$$52_s$$18$$ = $goog$style$getSize$$($element$$52_s$$18$$);
1579 return new $goog$math$Rect$$($o$$1$$.x, $o$$1$$.y, $element$$52_s$$18$$.width, $element$$52_s$$18$$.height)
1580}
1581function $goog$style$setOpacity$$($el$$15$$, $alpha$$3$$) {
1582 var $style$$6$$ = $el$$15$$.style;
1583 "opacity" in $style$$6$$ ? $style$$6$$.opacity = $alpha$$3$$ : "MozOpacity" in $style$$6$$ ? $style$$6$$.MozOpacity = $alpha$$3$$ : "filter" in $style$$6$$ && ($style$$6$$.filter = "" === $alpha$$3$$ ? "" : "alpha(opacity=" + 100 * $alpha$$3$$ + ")")
1584}
1585function $goog$style$showElement$$($el$$18$$, $display$$) {
1586 $el$$18$$.style.display = $display$$ ? "" : "none"
1587}
1588function $goog$style$isRightToLeft$$($el$$22$$) {
1589 return"rtl" == $goog$style$getStyle_$$($el$$22$$, "direction")
1590}
1591var $goog$style$unselectableStyle_$$ = $goog$userAgent$GECKO$$ ? "MozUserSelect" : $goog$userAgent$WEBKIT$$ ? "WebkitUserSelect" : $JSCompiler_alias_NULL$$;
1592function $goog$style$getIePixelValue_$$($element$$59$$, $value$$68$$) {
1593 if(/^\d+px?$/.test($value$$68$$)) {
1594 return parseInt($value$$68$$, 10)
1595 }
1596 var $oldStyleValue$$ = $element$$59$$.style.left, $oldRuntimeValue$$ = $element$$59$$.runtimeStyle.left;
1597 $element$$59$$.runtimeStyle.left = $element$$59$$.currentStyle.left;
1598 $element$$59$$.style.left = $value$$68$$;
1599 var $pixelValue$$ = $element$$59$$.style.pixelLeft;
1600 $element$$59$$.style.left = $oldStyleValue$$;
1601 $element$$59$$.runtimeStyle.left = $oldRuntimeValue$$;
1602 return $pixelValue$$
1603}
1604function $goog$style$getBox_$$($element$$61$$, $stylePrefix$$) {
1605 if($goog$userAgent$IE$$) {
1606 var $left$$8$$ = $goog$style$getIePixelValue_$$($element$$61$$, $goog$style$getCascadedStyle$$($element$$61$$, $stylePrefix$$ + "Left")), $right$$9$$ = $goog$style$getIePixelValue_$$($element$$61$$, $goog$style$getCascadedStyle$$($element$$61$$, $stylePrefix$$ + "Right")), $top$$6$$ = $goog$style$getIePixelValue_$$($element$$61$$, $goog$style$getCascadedStyle$$($element$$61$$, $stylePrefix$$ + "Top")), $bottom$$5$$ = $goog$style$getIePixelValue_$$($element$$61$$, $goog$style$getCascadedStyle$$($element$$61$$,
1607 $stylePrefix$$ + "Bottom"));
1608 return new $goog$math$Box$$($top$$6$$, $right$$9$$, $bottom$$5$$, $left$$8$$)
1609 }
1610 $left$$8$$ = $goog$style$getComputedStyle$$($element$$61$$, $stylePrefix$$ + "Left");
1611 $right$$9$$ = $goog$style$getComputedStyle$$($element$$61$$, $stylePrefix$$ + "Right");
1612 $top$$6$$ = $goog$style$getComputedStyle$$($element$$61$$, $stylePrefix$$ + "Top");
1613 $bottom$$5$$ = $goog$style$getComputedStyle$$($element$$61$$, $stylePrefix$$ + "Bottom");
1614 return new $goog$math$Box$$(parseFloat($top$$6$$), parseFloat($right$$9$$), parseFloat($bottom$$5$$), parseFloat($left$$8$$))
1615}
1616var $goog$style$ieBorderWidthKeywords_$$ = {thin:2, medium:4, thick:6};
1617function $goog$style$getIePixelBorder_$$($element$$64$$, $prop$$5$$) {
1618 if("none" == $goog$style$getCascadedStyle$$($element$$64$$, $prop$$5$$ + "Style")) {
1619 return 0
1620 }
1621 var $width$$15$$ = $goog$style$getCascadedStyle$$($element$$64$$, $prop$$5$$ + "Width");
1622 return $width$$15$$ in $goog$style$ieBorderWidthKeywords_$$ ? $goog$style$ieBorderWidthKeywords_$$[$width$$15$$] : $goog$style$getIePixelValue_$$($element$$64$$, $width$$15$$)
1623}
1624function $goog$style$getBorderBox$$($bottom$$6_element$$65$$) {
1625 if($goog$userAgent$IE$$) {
1626 var $left$$9$$ = $goog$style$getIePixelBorder_$$($bottom$$6_element$$65$$, "borderLeft"), $right$$10$$ = $goog$style$getIePixelBorder_$$($bottom$$6_element$$65$$, "borderRight"), $top$$7$$ = $goog$style$getIePixelBorder_$$($bottom$$6_element$$65$$, "borderTop"), $bottom$$6_element$$65$$ = $goog$style$getIePixelBorder_$$($bottom$$6_element$$65$$, "borderBottom");
1627 return new $goog$math$Box$$($top$$7$$, $right$$10$$, $bottom$$6_element$$65$$, $left$$9$$)
1628 }
1629 $left$$9$$ = $goog$style$getComputedStyle$$($bottom$$6_element$$65$$, "borderLeftWidth");
1630 $right$$10$$ = $goog$style$getComputedStyle$$($bottom$$6_element$$65$$, "borderRightWidth");
1631 $top$$7$$ = $goog$style$getComputedStyle$$($bottom$$6_element$$65$$, "borderTopWidth");
1632 $bottom$$6_element$$65$$ = $goog$style$getComputedStyle$$($bottom$$6_element$$65$$, "borderBottomWidth");
1633 return new $goog$math$Box$$(parseFloat($top$$7$$), parseFloat($right$$10$$), parseFloat($bottom$$6_element$$65$$), parseFloat($left$$9$$))
1634}
1635var $goog$style$MATRIX_TRANSLATION_REGEX_$$ = /matrix\([0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, ([0-9\.\-]+)p?x?, ([0-9\.\-]+)p?x?\)/;
1636function $goog$fx$Dragger$$($target$$43$$, $opt_handle$$, $opt_limits$$) {
1637 $goog$Disposable$$.call(this);
1638 this.target = $target$$43$$;
1639 this.handle = $opt_handle$$ || $target$$43$$;
1640 this.$limits$ = $opt_limits$$ || new $goog$math$Rect$$(NaN, NaN, NaN, NaN);
1641 this.$document_$ = $goog$dom$getOwnerDocument$$($target$$43$$);
1642 this.$eventHandler_$ = new $goog$events$EventHandler$$(this);
1643 $goog$events$listen$$(this.handle, ["touchstart", "mousedown"], this.$startDrag$, $JSCompiler_alias_FALSE$$, this)
1644}
1645$goog$inherits$$($goog$fx$Dragger$$, $goog$events$EventTarget$$);
1646var $goog$fx$Dragger$HAS_SET_CAPTURE_$$ = $goog$userAgent$IE$$ || $goog$userAgent$GECKO$$ && $goog$userAgent$isVersion$$("1.9.3");
1647$JSCompiler_prototypeAlias$$ = $goog$fx$Dragger$$.prototype;
1648$JSCompiler_prototypeAlias$$.clientX = 0;
1649$JSCompiler_prototypeAlias$$.clientY = 0;
1650$JSCompiler_prototypeAlias$$.screenX = 0;
1651$JSCompiler_prototypeAlias$$.screenY = 0;
1652$JSCompiler_prototypeAlias$$.$startX$ = 0;
1653$JSCompiler_prototypeAlias$$.$startY$ = 0;
1654$JSCompiler_prototypeAlias$$.$deltaX$ = 0;
1655$JSCompiler_prototypeAlias$$.$deltaY$ = 0;
1656$JSCompiler_prototypeAlias$$.$enabled_$ = $JSCompiler_alias_TRUE$$;
1657$JSCompiler_prototypeAlias$$.$dragging_$ = $JSCompiler_alias_FALSE$$;
1658$JSCompiler_prototypeAlias$$.$hysteresisDistanceSquared_$ = 0;
1659$JSCompiler_prototypeAlias$$.$mouseDownTime_$ = 0;
1660$JSCompiler_prototypeAlias$$.$ieDragStartCancellingOn_$ = $JSCompiler_alias_FALSE$$;
1661$JSCompiler_prototypeAlias$$.$useRightPositioningForRtl_$ = $JSCompiler_alias_FALSE$$;
1662$JSCompiler_prototypeAlias$$.$getHandler$ = $JSCompiler_get$$("$eventHandler_$");
1663function $JSCompiler_StaticMethods_isRightToLeft_$$($JSCompiler_StaticMethods_isRightToLeft_$self$$) {
1664 $goog$isDef$$($JSCompiler_StaticMethods_isRightToLeft_$self$$.$rightToLeft_$) || ($JSCompiler_StaticMethods_isRightToLeft_$self$$.$rightToLeft_$ = $goog$style$isRightToLeft$$($JSCompiler_StaticMethods_isRightToLeft_$self$$.target));
1665 return $JSCompiler_StaticMethods_isRightToLeft_$self$$.$rightToLeft_$
1666}
1667$JSCompiler_prototypeAlias$$.$startDrag$ = function $$JSCompiler_prototypeAlias$$$$startDrag$$($JSCompiler_temp$$51_e$$25_element$$inline_447$$) {
1668 var $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ = "mousedown" == $JSCompiler_temp$$51_e$$25_element$$inline_447$$.type;
1669 if(this.$enabled_$ && !this.$dragging_$ && (!$doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ || $JSCompiler_StaticMethods_isMouseActionButton$$($JSCompiler_temp$$51_e$$25_element$$inline_447$$))) {
1670 $JSCompiler_StaticMethods_maybeReinitTouchEvent_$$($JSCompiler_temp$$51_e$$25_element$$inline_447$$);
1671 if(0 == this.$hysteresisDistanceSquared_$) {
1672 if(this.dispatchEvent(new $goog$fx$DragEvent$$("start", this, $JSCompiler_temp$$51_e$$25_element$$inline_447$$.clientX, $JSCompiler_temp$$51_e$$25_element$$inline_447$$.clientY, $JSCompiler_temp$$51_e$$25_element$$inline_447$$))) {
1673 this.$dragging_$ = $JSCompiler_alias_TRUE$$, $JSCompiler_temp$$51_e$$25_element$$inline_447$$.preventDefault()
1674 }else {
1675 return
1676 }
1677 }else {
1678 $JSCompiler_temp$$51_e$$25_element$$inline_447$$.preventDefault()
1679 }
1680 var $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ = this.$document_$, $bestParent$$inline_449_docEl$$inline_444$$ = $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$.documentElement, $borderWidths$$inline_450_useCapture$$inline_445$$ = !$goog$fx$Dragger$HAS_SET_CAPTURE_$$;
1681 $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$, ["touchmove", "mousemove"], this.$handleMove_$, $borderWidths$$inline_450_useCapture$$inline_445$$);
1682 $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$, ["touchend", "mouseup"], this.$endDrag$, $borderWidths$$inline_450_useCapture$$inline_445$$);
1683 $goog$fx$Dragger$HAS_SET_CAPTURE_$$ ? ($bestParent$$inline_449_docEl$$inline_444$$.setCapture($JSCompiler_alias_FALSE$$), $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, $bestParent$$inline_449_docEl$$inline_444$$, "losecapture", this.$endDrag$)) : $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ ? $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$.parentWindow || $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$.defaultView :
1684 window, "blur", this.$endDrag$);
1685 $goog$userAgent$IE$$ && this.$ieDragStartCancellingOn_$ && $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$, "dragstart", $goog$events$Event$preventDefault$$);
1686 this.$scrollTarget_$ && $JSCompiler_StaticMethods_listen$$(this.$eventHandler_$, this.$scrollTarget_$, "scroll", this.$onScroll_$, $borderWidths$$inline_450_useCapture$$inline_445$$);
1687 this.clientX = this.$startX$ = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.clientX;
1688 this.clientY = this.$startY$ = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.clientY;
1689 this.screenX = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.screenX;
1690 this.screenY = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.screenY;
1691 this.$useRightPositioningForRtl_$ ? ($JSCompiler_temp$$51_e$$25_element$$inline_447$$ = this.target, $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.offsetLeft, $bestParent$$inline_449_docEl$$inline_444$$ = $JSCompiler_temp$$51_e$$25_element$$inline_447$$.offsetParent, !$bestParent$$inline_449_docEl$$inline_444$$ && "fixed" == $goog$style$getStyle_$$($JSCompiler_temp$$51_e$$25_element$$inline_447$$, "position") && ($bestParent$$inline_449_docEl$$inline_444$$ =
1692 $goog$dom$getOwnerDocument$$($JSCompiler_temp$$51_e$$25_element$$inline_447$$).documentElement), $bestParent$$inline_449_docEl$$inline_444$$ ? ($goog$userAgent$GECKO$$ ? ($borderWidths$$inline_450_useCapture$$inline_445$$ = $goog$style$getBorderBox$$($bestParent$$inline_449_docEl$$inline_444$$), $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ += $borderWidths$$inline_450_useCapture$$inline_445$$.left) : $goog$userAgent$isDocumentMode$$(8) && ($borderWidths$$inline_450_useCapture$$inline_445$$ =
1693 $goog$style$getBorderBox$$($bestParent$$inline_449_docEl$$inline_444$$), $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ -= $borderWidths$$inline_450_useCapture$$inline_445$$.left), $JSCompiler_temp$$51_e$$25_element$$inline_447$$ = $goog$style$isRightToLeft$$($bestParent$$inline_449_docEl$$inline_444$$) ? $bestParent$$inline_449_docEl$$inline_444$$.clientWidth - ($doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$ + $JSCompiler_temp$$51_e$$25_element$$inline_447$$.offsetWidth) :
1694 $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$) : $JSCompiler_temp$$51_e$$25_element$$inline_447$$ = $doc$$inline_443_isMouseDown_offsetLeftForReal$$inline_448$$) : $JSCompiler_temp$$51_e$$25_element$$inline_447$$ = this.target.offsetLeft;
1695 this.$deltaX$ = $JSCompiler_temp$$51_e$$25_element$$inline_447$$;
1696 this.$deltaY$ = this.target.offsetTop;
1697 this.$pageScroll$ = $JSCompiler_StaticMethods_getDocumentScroll$$($goog$dom$getDomHelper$$(this.$document_$));
1698 this.$mouseDownTime_$ = $goog$now$$()
1699 }else {
1700 this.dispatchEvent("earlycancel")
1701 }
1702};
1703$JSCompiler_prototypeAlias$$.$endDrag$ = function $$JSCompiler_prototypeAlias$$$$endDrag$$($e$$27$$, $opt_dragCanceled$$) {
1704 this.$eventHandler_$.$removeAll$();
1705 $goog$fx$Dragger$HAS_SET_CAPTURE_$$ && this.$document_$.releaseCapture();
1706 if(this.$dragging_$) {
1707 $JSCompiler_StaticMethods_maybeReinitTouchEvent_$$($e$$27$$);
1708 this.$dragging_$ = $JSCompiler_alias_FALSE$$;
1709 var $x$$72$$ = $JSCompiler_StaticMethods_limitX$$(this, this.$deltaX$), $y$$40$$ = $JSCompiler_StaticMethods_limitY$$(this, this.$deltaY$);
1710 this.dispatchEvent(new $goog$fx$DragEvent$$("end", this, $e$$27$$.clientX, $e$$27$$.clientY, $e$$27$$, $x$$72$$, $y$$40$$, $opt_dragCanceled$$ || "touchcancel" == $e$$27$$.type))
1711 }else {
1712 this.dispatchEvent("earlycancel")
1713 }
1714 ("touchend" == $e$$27$$.type || "touchcancel" == $e$$27$$.type) && $e$$27$$.preventDefault()
1715};
1716function $JSCompiler_StaticMethods_maybeReinitTouchEvent_$$($e$$29$$) {
1717 var $type$$77$$ = $e$$29$$.type;
1718 "touchstart" == $type$$77$$ || "touchmove" == $type$$77$$ ? $e$$29$$.init($e$$29$$.$event_$.targetTouches[0], $e$$29$$.currentTarget) : ("touchend" == $type$$77$$ || "touchcancel" == $type$$77$$) && $e$$29$$.init($e$$29$$.$event_$.changedTouches[0], $e$$29$$.currentTarget)
1719}
1720$JSCompiler_prototypeAlias$$.$handleMove_$ = function $$JSCompiler_prototypeAlias$$$$handleMove_$$($e$$30$$) {
1721 if(this.$enabled_$) {
1722 $JSCompiler_StaticMethods_maybeReinitTouchEvent_$$($e$$30$$);
1723 var $dx$$7_x$$73$$ = (this.$useRightPositioningForRtl_$ && $JSCompiler_StaticMethods_isRightToLeft_$$(this) ? -1 : 1) * ($e$$30$$.clientX - this.clientX), $dy$$7_pos$$5_y$$41$$ = $e$$30$$.clientY - this.clientY;
1724 this.clientX = $e$$30$$.clientX;
1725 this.clientY = $e$$30$$.clientY;
1726 this.screenX = $e$$30$$.screenX;
1727 this.screenY = $e$$30$$.screenY;
1728 if(!this.$dragging_$) {
1729 var $diffX$$ = this.$startX$ - this.clientX, $diffY$$ = this.$startY$ - this.clientY;
1730 if($diffX$$ * $diffX$$ + $diffY$$ * $diffY$$ > this.$hysteresisDistanceSquared_$) {
1731 if(this.dispatchEvent(new $goog$fx$DragEvent$$("start", this, $e$$30$$.clientX, $e$$30$$.clientY, $e$$30$$))) {
1732 this.$dragging_$ = $JSCompiler_alias_TRUE$$
1733 }else {
1734 this.$disposed_$ || this.$endDrag$($e$$30$$);
1735 return
1736 }
1737 }
1738 }
1739 $dy$$7_pos$$5_y$$41$$ = $JSCompiler_StaticMethods_calculatePosition_$$(this, $dx$$7_x$$73$$, $dy$$7_pos$$5_y$$41$$);
1740 $dx$$7_x$$73$$ = $dy$$7_pos$$5_y$$41$$.x;
1741 $dy$$7_pos$$5_y$$41$$ = $dy$$7_pos$$5_y$$41$$.y;
1742 this.$dragging_$ && this.dispatchEvent(new $goog$fx$DragEvent$$("beforedrag", this, $e$$30$$.clientX, $e$$30$$.clientY, $e$$30$$, $dx$$7_x$$73$$, $dy$$7_pos$$5_y$$41$$)) && ($JSCompiler_StaticMethods_doDrag$$(this, $e$$30$$, $dx$$7_x$$73$$, $dy$$7_pos$$5_y$$41$$), $e$$30$$.preventDefault())
1743 }
1744};
1745function $JSCompiler_StaticMethods_calculatePosition_$$($JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$, $dx$$8_x$$74$$, $dy$$8$$) {
1746 var $pageScroll$$ = $JSCompiler_StaticMethods_getDocumentScroll$$($goog$dom$getDomHelper$$($JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$document_$)), $dx$$8_x$$74$$ = $dx$$8_x$$74$$ + ($pageScroll$$.x - $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$pageScroll$.x), $dy$$8$$ = $dy$$8$$ + ($pageScroll$$.y - $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$pageScroll$.y);
1747 $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$pageScroll$ = $pageScroll$$;
1748 $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$deltaX$ += $dx$$8_x$$74$$;
1749 $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$deltaY$ += $dy$$8$$;
1750 $dx$$8_x$$74$$ = $JSCompiler_StaticMethods_limitX$$($JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$, $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$deltaX$);
1751 $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$ = $JSCompiler_StaticMethods_limitY$$($JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$, $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$.$deltaY$);
1752 return new $goog$math$Coordinate$$($dx$$8_x$$74$$, $JSCompiler_StaticMethods_calculatePosition_$self_y$$42$$)
1753}
1754$JSCompiler_prototypeAlias$$.$onScroll_$ = function $$JSCompiler_prototypeAlias$$$$onScroll_$$($e$$31$$) {
1755 var $pos$$6$$ = $JSCompiler_StaticMethods_calculatePosition_$$(this, 0, 0);
1756 $e$$31$$.clientX = this.clientX;
1757 $e$$31$$.clientY = this.clientY;
1758 $JSCompiler_StaticMethods_doDrag$$(this, $e$$31$$, $pos$$6$$.x, $pos$$6$$.y)
1759};
1760function $JSCompiler_StaticMethods_doDrag$$($JSCompiler_StaticMethods_doDrag$self$$, $e$$32$$, $x$$75$$, $y$$43$$) {
1761 $JSCompiler_StaticMethods_doDrag$self$$.$defaultAction$($x$$75$$, $y$$43$$);
1762 $JSCompiler_StaticMethods_doDrag$self$$.dispatchEvent(new $goog$fx$DragEvent$$("drag", $JSCompiler_StaticMethods_doDrag$self$$, $e$$32$$.clientX, $e$$32$$.clientY, $e$$32$$, $x$$75$$, $y$$43$$))
1763}
1764function $JSCompiler_StaticMethods_limitX$$($JSCompiler_StaticMethods_limitX$self$$, $x$$76$$) {
1765 var $rect$$6_width$$17$$ = $JSCompiler_StaticMethods_limitX$self$$.$limits$, $left$$11$$ = !isNaN($rect$$6_width$$17$$.left) ? $rect$$6_width$$17$$.left : $JSCompiler_alias_NULL$$, $rect$$6_width$$17$$ = !isNaN($rect$$6_width$$17$$.width) ? $rect$$6_width$$17$$.width : 0;
1766 return Math.min($left$$11$$ != $JSCompiler_alias_NULL$$ ? $left$$11$$ + $rect$$6_width$$17$$ : Infinity, Math.max($left$$11$$ != $JSCompiler_alias_NULL$$ ? $left$$11$$ : -Infinity, $x$$76$$))
1767}
1768function $JSCompiler_StaticMethods_limitY$$($JSCompiler_StaticMethods_limitY$self$$, $y$$44$$) {
1769 var $height$$16_rect$$7$$ = $JSCompiler_StaticMethods_limitY$self$$.$limits$, $top$$9$$ = !isNaN($height$$16_rect$$7$$.top) ? $height$$16_rect$$7$$.top : $JSCompiler_alias_NULL$$, $height$$16_rect$$7$$ = !isNaN($height$$16_rect$$7$$.height) ? $height$$16_rect$$7$$.height : 0;
1770 return Math.min($top$$9$$ != $JSCompiler_alias_NULL$$ ? $top$$9$$ + $height$$16_rect$$7$$ : Infinity, Math.max($top$$9$$ != $JSCompiler_alias_NULL$$ ? $top$$9$$ : -Infinity, $y$$44$$))
1771}
1772$JSCompiler_prototypeAlias$$.$defaultAction$ = function $$JSCompiler_prototypeAlias$$$$defaultAction$$($x$$77$$, $y$$45$$) {
1773 this.$useRightPositioningForRtl_$ && $JSCompiler_StaticMethods_isRightToLeft_$$(this) ? this.target.style.right = $x$$77$$ + "px" : this.target.style.left = $x$$77$$ + "px";
1774 this.target.style.top = $y$$45$$ + "px"
1775};
1776function $goog$fx$DragEvent$$($type$$78$$, $dragobj$$, $clientX$$2$$, $clientY$$2$$, $browserEvent$$, $opt_actX$$, $opt_actY$$, $opt_dragCanceled$$1$$) {
1777 $goog$events$Event$$.call(this, $type$$78$$);
1778 this.clientX = $clientX$$2$$;
1779 this.clientY = $clientY$$2$$;
1780 this.$browserEvent$ = $browserEvent$$;
1781 this.left = $goog$isDef$$($opt_actX$$) ? $opt_actX$$ : $dragobj$$.$deltaX$;
1782 this.top = $goog$isDef$$($opt_actY$$) ? $opt_actY$$ : $dragobj$$.$deltaY$;
1783 this.$dragger$ = $dragobj$$;
1784 this.$dragCanceled$ = !!$opt_dragCanceled$$1$$
1785}
1786$goog$inherits$$($goog$fx$DragEvent$$, $goog$events$Event$$);
1787function $annotorious$dom$getOffset$$($el$$29$$) {
1788 for(var $_x$$ = 0, $_y$$ = 0;$el$$29$$ && !isNaN($el$$29$$.offsetLeft) && !isNaN($el$$29$$.offsetTop);) {
1789 $_x$$ += $el$$29$$.offsetLeft - $el$$29$$.scrollLeft, $_y$$ += $el$$29$$.offsetTop - $el$$29$$.scrollTop, $el$$29$$ = $el$$29$$.offsetParent
1790 }
1791 return{top:$_y$$, left:$_x$$}
1792}
1793;function $annotorious$events$EventBroker$$() {
1794 this.$_handlers$ = []
1795}
1796$annotorious$events$EventBroker$$.prototype.$addHandler$ = function $$annotorious$events$EventBroker$$$$$addHandler$$($type$$79$$, $handler$$5$$) {
1797 this.$_handlers$[$type$$79$$] || (this.$_handlers$[$type$$79$$] = []);
1798 this.$_handlers$[$type$$79$$].push($handler$$5$$)
1799};
1800$annotorious$events$EventBroker$$.prototype.$removeHandler$ = function $$annotorious$events$EventBroker$$$$$removeHandler$$($type$$80$$, $handler$$6$$) {
1801 var $handlers$$ = this.$_handlers$[$type$$80$$];
1802 $handlers$$ && $goog$array$remove$$($handlers$$, $handler$$6$$)
1803};
1804$annotorious$events$EventBroker$$.prototype.fireEvent = function $$annotorious$events$EventBroker$$$$fireEvent$($type$$81$$, $opt_event$$) {
1805 var $cancelEvent$$ = $JSCompiler_alias_FALSE$$, $handlers$$1$$ = this.$_handlers$[$type$$81$$];
1806 $handlers$$1$$ && $goog$array$forEach$$($handlers$$1$$, function($handler$$7_retVal$$1$$) {
1807 $handler$$7_retVal$$1$$ = $handler$$7_retVal$$1$$($opt_event$$);
1808 $goog$isDef$$($handler$$7_retVal$$1$$) && !$handler$$7_retVal$$1$$ && ($cancelEvent$$ = $JSCompiler_alias_TRUE$$)
1809 });
1810 return $cancelEvent$$
1811};
1812function $goog$structs$Map$$($opt_map$$, $var_args$$68$$) {
1813 this.$map_$ = {};
1814 this.$keys_$ = [];
1815 var $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ = arguments.length;
1816 if(1 < $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$) {
1817 $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ % 2 && $JSCompiler_alias_THROW$$(Error("Uneven number of arguments"));
1818 for(var $i$$91_key$$inline_857_values$$inline_460$$ = 0;$i$$91_key$$inline_857_values$$inline_460$$ < $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$;$i$$91_key$$inline_857_values$$inline_460$$ += 2) {
1819 this.set(arguments[$i$$91_key$$inline_857_values$$inline_460$$], arguments[$i$$91_key$$inline_857_values$$inline_460$$ + 1])
1820 }
1821 }else {
1822 if($opt_map$$) {
1823 var $key$$inline_852_keys$$inline_459$$;
1824 if($opt_map$$ instanceof $goog$structs$Map$$) {
1825 $JSCompiler_StaticMethods_cleanupKeysArray_$$($opt_map$$), $key$$inline_852_keys$$inline_459$$ = $opt_map$$.$keys_$.concat(), $i$$91_key$$inline_857_values$$inline_460$$ = $JSCompiler_StaticMethods_getValues$$($opt_map$$)
1826 }else {
1827 var $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ = [], $i$$inline_851_i$$inline_856$$ = 0;
1828 for($key$$inline_852_keys$$inline_459$$ in $opt_map$$) {
1829 $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$[$i$$inline_851_i$$inline_856$$++] = $key$$inline_852_keys$$inline_459$$
1830 }
1831 $key$$inline_852_keys$$inline_459$$ = $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$;
1832 $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ = [];
1833 $i$$inline_851_i$$inline_856$$ = 0;
1834 for($i$$91_key$$inline_857_values$$inline_460$$ in $opt_map$$) {
1835 $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$[$i$$inline_851_i$$inline_856$$++] = $opt_map$$[$i$$91_key$$inline_857_values$$inline_460$$]
1836 }
1837 $i$$91_key$$inline_857_values$$inline_460$$ = $argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$
1838 }
1839 for($argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ = 0;$argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$ < $key$$inline_852_keys$$inline_459$$.length;$argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$++) {
1840 this.set($key$$inline_852_keys$$inline_459$$[$argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$], $i$$91_key$$inline_857_values$$inline_460$$[$argLength$$2_i$$inline_461_res$$inline_850_res$$inline_855$$])
1841 }
1842 }
1843 }
1844}
1845$JSCompiler_prototypeAlias$$ = $goog$structs$Map$$.prototype;
1846$JSCompiler_prototypeAlias$$.$count_$ = 0;
1847$JSCompiler_prototypeAlias$$.$version_$ = 0;
1848function $JSCompiler_StaticMethods_getValues$$($JSCompiler_StaticMethods_getValues$self$$) {
1849 $JSCompiler_StaticMethods_cleanupKeysArray_$$($JSCompiler_StaticMethods_getValues$self$$);
1850 for(var $rv$$18$$ = [], $i$$92$$ = 0;$i$$92$$ < $JSCompiler_StaticMethods_getValues$self$$.$keys_$.length;$i$$92$$++) {
1851 $rv$$18$$.push($JSCompiler_StaticMethods_getValues$self$$.$map_$[$JSCompiler_StaticMethods_getValues$self$$.$keys_$[$i$$92$$]])
1852 }
1853 return $rv$$18$$
1854}
1855$JSCompiler_prototypeAlias$$.clear = function $$JSCompiler_prototypeAlias$$$clear$() {
1856 this.$map_$ = {};
1857 this.$version_$ = this.$count_$ = this.$keys_$.length = 0
1858};
1859$JSCompiler_prototypeAlias$$.remove = function $$JSCompiler_prototypeAlias$$$remove$($key$$56$$) {
1860 return $goog$structs$Map$hasKey_$$(this.$map_$, $key$$56$$) ? (delete this.$map_$[$key$$56$$], this.$count_$--, this.$version_$++, this.$keys_$.length > 2 * this.$count_$ && $JSCompiler_StaticMethods_cleanupKeysArray_$$(this), $JSCompiler_alias_TRUE$$) : $JSCompiler_alias_FALSE$$
1861};
1862function $JSCompiler_StaticMethods_cleanupKeysArray_$$($JSCompiler_StaticMethods_cleanupKeysArray_$self$$) {
1863 if($JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$count_$ != $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length) {
1864 for(var $srcIndex$$ = 0, $destIndex$$ = 0;$srcIndex$$ < $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length;) {
1865 var $key$$57$$ = $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$[$srcIndex$$];
1866 $goog$structs$Map$hasKey_$$($JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$map_$, $key$$57$$) && ($JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$[$destIndex$$++] = $key$$57$$);
1867 $srcIndex$$++
1868 }
1869 $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length = $destIndex$$
1870 }
1871 if($JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$count_$ != $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length) {
1872 for(var $seen$$2$$ = {}, $destIndex$$ = $srcIndex$$ = 0;$srcIndex$$ < $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length;) {
1873 $key$$57$$ = $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$[$srcIndex$$], $goog$structs$Map$hasKey_$$($seen$$2$$, $key$$57$$) || ($JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$[$destIndex$$++] = $key$$57$$, $seen$$2$$[$key$$57$$] = 1), $srcIndex$$++
1874 }
1875 $JSCompiler_StaticMethods_cleanupKeysArray_$self$$.$keys_$.length = $destIndex$$
1876 }
1877}
1878$JSCompiler_prototypeAlias$$.get = function $$JSCompiler_prototypeAlias$$$get$($key$$58$$, $opt_val$$1$$) {
1879 return $goog$structs$Map$hasKey_$$(this.$map_$, $key$$58$$) ? this.$map_$[$key$$58$$] : $opt_val$$1$$
1880};
1881$JSCompiler_prototypeAlias$$.set = function $$JSCompiler_prototypeAlias$$$set$($key$$59$$, $value$$73$$) {
1882 $goog$structs$Map$hasKey_$$(this.$map_$, $key$$59$$) || (this.$count_$++, this.$keys_$.push($key$$59$$), this.$version_$++);
1883 this.$map_$[$key$$59$$] = $value$$73$$
1884};
1885function $goog$structs$Map$hasKey_$$($obj$$72$$, $key$$63$$) {
1886 return Object.prototype.hasOwnProperty.call($obj$$72$$, $key$$63$$)
1887}
1888;function $annotorious$shape$geom$Point$$($x$$79$$, $y$$46$$) {
1889 this.x = $x$$79$$;
1890 this.y = $y$$46$$
1891}
1892;function $annotorious$shape$geom$Polygon$$($points$$) {
1893 this.points = $points$$
1894}
1895function $annotorious$shape$geom$Polygon$computeArea$$($points$$1$$) {
1896 for(var $area$$ = 0, $j$$8$$ = $points$$1$$.length - 1, $i$$99$$ = 0;$i$$99$$ < $points$$1$$.length;$i$$99$$++) {
1897 $area$$ += ($points$$1$$[$j$$8$$].x + $points$$1$$[$i$$99$$].x) * ($points$$1$$[$j$$8$$].y - $points$$1$$[$i$$99$$].y), $j$$8$$ = $i$$99$$
1898 }
1899 return $area$$ / 2
1900}
1901function $annotorious$shape$geom$Polygon$_expandTriangle$$($points$$4$$, $delta$$1$$) {
1902 for(var $centroid_x$$inline_464$$, $expanded_y$$inline_465$$ = $centroid_x$$inline_464$$ = 0, $f$$inline_466_i$$101$$, $j$$inline_467_px$$inline_470$$ = $points$$4$$.length - 1, $JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ = 0;$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ < $points$$4$$.length;$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$++) {
1903 $f$$inline_466_i$$101$$ = $points$$4$$[$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$].x * $points$$4$$[$j$$inline_467_px$$inline_470$$].y - $points$$4$$[$j$$inline_467_px$$inline_470$$].x * $points$$4$$[$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$].y, $centroid_x$$inline_464$$ += ($points$$4$$[$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$].x + $points$$4$$[$j$$inline_467_px$$inline_470$$].x) * $f$$inline_466_i$$101$$, $expanded_y$$inline_465$$ += ($points$$4$$[$JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$].y +
1904 $points$$4$$[$j$$inline_467_px$$inline_470$$].y) * $f$$inline_466_i$$101$$, $j$$inline_467_px$$inline_470$$ = $JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$
1905 }
1906 $f$$inline_466_i$$101$$ = 6 * $annotorious$shape$geom$Polygon$computeArea$$($points$$4$$);
1907 $centroid_x$$inline_464$$ = new $annotorious$shape$geom$Point$$(Math.abs($centroid_x$$inline_464$$ / $f$$inline_466_i$$101$$), Math.abs($expanded_y$$inline_465$$ / $f$$inline_466_i$$101$$));
1908 $expanded_y$$inline_465$$ = [];
1909 for($f$$inline_466_i$$101$$ = 0;$f$$inline_466_i$$101$$ < $points$$4$$.length;$f$$inline_466_i$$101$$++) {
1910 var $j$$inline_467_px$$inline_470$$ = $points$$4$$[$f$$inline_466_i$$101$$], $delta$$inline_472_dy$$inline_476$$ = (0 > $annotorious$shape$geom$Polygon$computeArea$$($points$$4$$) ? -1 : 1) * $delta$$1$$, $JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ = $j$$inline_467_px$$inline_470$$.x - $centroid_x$$inline_464$$.x, $JSCompiler_object_inline_y_1$$inline_474$$ = $j$$inline_467_px$$inline_470$$.y - $centroid_x$$inline_464$$.y, $sign_delta$$inline_475$$ = 0 < $delta$$inline_472_dy$$inline_476$$ ?
1911 1 : 0 > $delta$$inline_472_dy$$inline_476$$ ? -1 : 0, $delta$$inline_472_dy$$inline_476$$ = Math.sqrt(Math.pow($delta$$inline_472_dy$$inline_476$$, 2) / (1 + Math.pow($JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ / $JSCompiler_object_inline_y_1$$inline_474$$, 2)));
1912 $expanded_y$$inline_465$$.push({x:$j$$inline_467_px$$inline_470$$.x + Math.abs($JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ / $JSCompiler_object_inline_y_1$$inline_474$$ * $delta$$inline_472_dy$$inline_476$$) * (0 < $JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ ? 1 : 0 > $JSCompiler_object_inline_x_0$$inline_473_i$$inline_468$$ ? -1 : 0) * $sign_delta$$inline_475$$, y:$j$$inline_467_px$$inline_470$$.y + Math.abs($delta$$inline_472_dy$$inline_476$$) * (0 < $JSCompiler_object_inline_y_1$$inline_474$$ ?
1913 1 : 0 > $JSCompiler_object_inline_y_1$$inline_474$$ ? -1 : 0) * $sign_delta$$inline_475$$})
1914 }
1915 return $expanded_y$$inline_465$$
1916}
1917;function $annotorious$shape$geom$Rectangle$$($x$$81$$, $y$$48$$, $width$$19$$, $height$$18$$) {
1918 0 < $width$$19$$ ? (this.x = $x$$81$$, this.width = $width$$19$$) : (this.x = $x$$81$$ + $width$$19$$, this.width = -$width$$19$$);
1919 0 < $height$$18$$ ? (this.y = $y$$48$$, this.height = $height$$18$$) : (this.y = $y$$48$$ + $height$$18$$, this.height = -$height$$18$$)
1920}
1921;function $annotorious$shape$Shape$$($type$$82$$, $geometry$$) {
1922 this.type = $type$$82$$;
1923 this.geometry = $geometry$$
1924}
1925function $annotorious$shape$getSize$$($shape$$1$$) {
1926 return"rect" == $shape$$1$$.type ? $shape$$1$$.geometry.width * $shape$$1$$.geometry.height : "polygon" == $shape$$1$$.type ? Math.abs($annotorious$shape$geom$Polygon$computeArea$$($shape$$1$$.geometry.points)) : 0
1927}
1928function $annotorious$shape$getBoundingRect$$($points$$7_shape$$2$$) {
1929 if("rect" == $points$$7_shape$$2$$.type) {
1930 return $points$$7_shape$$2$$
1931 }
1932 if("polygon" == $points$$7_shape$$2$$.type) {
1933 for(var $points$$7_shape$$2$$ = $points$$7_shape$$2$$.geometry.points, $left$$13$$ = $points$$7_shape$$2$$[0].x, $right$$11$$ = $points$$7_shape$$2$$[0].x, $top$$11$$ = $points$$7_shape$$2$$[0].y, $bottom$$7$$ = $points$$7_shape$$2$$[0].y, $i$$103$$ = 1;$i$$103$$ < $points$$7_shape$$2$$.length;$i$$103$$++) {
1934 $points$$7_shape$$2$$[$i$$103$$].x > $right$$11$$ && ($right$$11$$ = $points$$7_shape$$2$$[$i$$103$$].x), $points$$7_shape$$2$$[$i$$103$$].x < $left$$13$$ && ($left$$13$$ = $points$$7_shape$$2$$[$i$$103$$].x), $points$$7_shape$$2$$[$i$$103$$].y > $bottom$$7$$ && ($bottom$$7$$ = $points$$7_shape$$2$$[$i$$103$$].y), $points$$7_shape$$2$$[$i$$103$$].y < $top$$11$$ && ($top$$11$$ = $points$$7_shape$$2$$[$i$$103$$].y)
1935 }
1936 return new $annotorious$shape$Shape$$("rect", new $annotorious$shape$geom$Rectangle$$($left$$13$$, $top$$11$$, $right$$11$$ - $left$$13$$, $bottom$$7$$ - $top$$11$$))
1937 }
1938}
1939function $annotorious$shape$expand$$($shape$$4$$, $delta$$4$$) {
1940 var $JSCompiler_inline_result$$36_points$$inline_478$$;
1941 $JSCompiler_inline_result$$36_points$$inline_478$$ = $shape$$4$$.geometry.points;
1942 var $sign$$inline_480$$ = 0 > $annotorious$shape$geom$Polygon$computeArea$$($JSCompiler_inline_result$$36_points$$inline_478$$) ? -1 : 1;
1943 if(4 > $JSCompiler_inline_result$$36_points$$inline_478$$.length) {
1944 $JSCompiler_inline_result$$36_points$$inline_478$$ = $annotorious$shape$geom$Polygon$_expandTriangle$$($JSCompiler_inline_result$$36_points$$inline_478$$, $sign$$inline_480$$ * $delta$$4$$)
1945 }else {
1946 for(var $expTriangle$$inline_485_prev$$inline_481$$ = $JSCompiler_inline_result$$36_points$$inline_478$$.length - 1, $next$$inline_482$$ = 1, $expanded$$inline_483$$ = [], $current$$inline_484$$ = 0;$current$$inline_484$$ < $JSCompiler_inline_result$$36_points$$inline_478$$.length;$current$$inline_484$$++) {
1947 $expTriangle$$inline_485_prev$$inline_481$$ = $annotorious$shape$geom$Polygon$_expandTriangle$$([$JSCompiler_inline_result$$36_points$$inline_478$$[$expTriangle$$inline_485_prev$$inline_481$$], $JSCompiler_inline_result$$36_points$$inline_478$$[$current$$inline_484$$], $JSCompiler_inline_result$$36_points$$inline_478$$[$next$$inline_482$$]], $sign$$inline_480$$ * $delta$$4$$), $expanded$$inline_483$$.push($expTriangle$$inline_485_prev$$inline_481$$[1]), $expTriangle$$inline_485_prev$$inline_481$$ =
1948 $current$$inline_484$$, $next$$inline_482$$++, $next$$inline_482$$ > $JSCompiler_inline_result$$36_points$$inline_478$$.length - 1 && ($next$$inline_482$$ = 0)
1949 }
1950 $JSCompiler_inline_result$$36_points$$inline_478$$ = $expanded$$inline_483$$
1951 }
1952 return new $annotorious$shape$Shape$$("polygon", new $annotorious$shape$geom$Polygon$$($JSCompiler_inline_result$$36_points$$inline_478$$))
1953}
1954function $annotorious$shape$transform$$($shape$$5$$, $transformationFn$$) {
1955 if("rect" == $shape$$5$$.type) {
1956 var $geom_opposite$$ = $shape$$5$$.geometry, $anchor$$ = $transformationFn$$({x:$geom_opposite$$.x, y:$geom_opposite$$.y}), $geom_opposite$$ = $transformationFn$$({x:$geom_opposite$$.x + $geom_opposite$$.width, y:$geom_opposite$$.y + $geom_opposite$$.height});
1957 return new $annotorious$shape$Shape$$("rect", new $annotorious$shape$geom$Rectangle$$($anchor$$.x, $anchor$$.y, $geom_opposite$$.x - $anchor$$.x, $geom_opposite$$.y - $anchor$$.y))
1958 }
1959 if("polygon" == $shape$$5$$.type) {
1960 var $transformedPoints$$ = [];
1961 $goog$array$forEach$$($shape$$5$$.geometry.points, function($pt$$) {
1962 $transformedPoints$$.push($transformationFn$$($pt$$))
1963 });
1964 return new $annotorious$shape$Shape$$("polygon", new $annotorious$shape$geom$Polygon$$($transformedPoints$$))
1965 }
1966}
1967function $annotorious$shape$hashCode$$($shape$$6$$) {
1968 return JSON.stringify($shape$$6$$.geometry)
1969}
1970window.annotorious || (window.annotorious = {});
1971window.annotorious.geometry || (window.annotorious.geometry = {}, window.annotorious.geometry.expand = $annotorious$shape$expand$$);
1972function $annotorious$Annotation$$($src$$21$$, $text$$10$$, $shape$$7$$) {
1973 this.src = $src$$21$$;
1974 this.text = $text$$10$$;
1975 this.shapes = [$shape$$7$$];
1976 this.context = document.URL
1977}
1978;function $annotorious$mediatypes$Module$$() {
1979}
1980function $JSCompiler_StaticMethods__initFields$$($JSCompiler_StaticMethods__initFields$self$$, $opt_preload_fn$$) {
1981 $JSCompiler_StaticMethods__initFields$self$$.$_annotators$ = new $goog$structs$Map$$;
1982 $JSCompiler_StaticMethods__initFields$self$$.$_eventHandlers$ = [];
1983 $JSCompiler_StaticMethods__initFields$self$$.$_plugins$ = [];
1984 $JSCompiler_StaticMethods__initFields$self$$.$_itemsToLoad$ = [];
1985 $JSCompiler_StaticMethods__initFields$self$$.$_bufferedForAdding$ = [];
1986 $JSCompiler_StaticMethods__initFields$self$$.$_bufferedForRemoval$ = [];
1987 $JSCompiler_StaticMethods__initFields$self$$.$_cachedGlobalSettings$ = {$hide_selection_widget$:$JSCompiler_alias_FALSE$$, $hide_annotations$:$JSCompiler_alias_FALSE$$};
1988 $JSCompiler_StaticMethods__initFields$self$$.$_cachedItemSettings$ = new $goog$structs$Map$$;
1989 $JSCompiler_StaticMethods__initFields$self$$.$_cachedProperties$ = $JSCompiler_alias_VOID$$;
1990 $JSCompiler_StaticMethods__initFields$self$$.$_preLoad$ = $opt_preload_fn$$
1991}
1992function $JSCompiler_StaticMethods__getSettings$$($JSCompiler_StaticMethods__getSettings$self$$, $item_url$$) {
1993 var $settings$$ = $JSCompiler_StaticMethods__getSettings$self$$.$_cachedItemSettings$.get($item_url$$);
1994 $settings$$ || ($settings$$ = {$hide_selection_widget$:$JSCompiler_alias_FALSE$$, $hide_annotations$:$JSCompiler_alias_FALSE$$}, $JSCompiler_StaticMethods__getSettings$self$$.$_cachedItemSettings$.set($item_url$$, $settings$$));
1995 return $settings$$
1996}
1997function $JSCompiler_StaticMethods__initAnnotator$$($JSCompiler_StaticMethods__initAnnotator$self$$, $item$$1$$) {
1998 var $item_src$$ = $JSCompiler_StaticMethods__initAnnotator$self$$.$getItemURL$($item$$1$$);
1999 if(!$JSCompiler_StaticMethods__initAnnotator$self$$.$_annotators$.get($item_src$$)) {
2000 var $annotator$$1$$ = $JSCompiler_StaticMethods__initAnnotator$self$$.$newAnnotator$($item$$1$$), $addedAnnotations$$ = [], $removedAnnotations$$ = [];
2001 $goog$array$forEach$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_eventHandlers$, function($eventHandler$$) {
2002 $annotator$$1$$.$addHandler$($eventHandler$$.type, $eventHandler$$.$handler$)
2003 });
2004 $goog$array$forEach$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_plugins$, function($plugin$$) {
2005 if($plugin$$.onInitAnnotator) {
2006 $plugin$$.onInitAnnotator($annotator$$1$$)
2007 }
2008 });
2009 $goog$array$forEach$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_bufferedForAdding$, function($annotation$$) {
2010 $annotation$$.src == $item_src$$ && ($annotator$$1$$.$addAnnotation$($annotation$$), $addedAnnotations$$.push($annotation$$))
2011 });
2012 $goog$array$forEach$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_bufferedForRemoval$, function($annotation$$1$$) {
2013 $annotation$$1$$.src == $item_src$$ && ($annotator$$1$$.$removeAnnotation$($annotation$$1$$), $removedAnnotations$$.push($annotation$$1$$))
2014 });
2015 $goog$array$forEach$$($addedAnnotations$$, function($annotation$$2$$) {
2016 $goog$array$remove$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_bufferedForAdding$, $annotation$$2$$)
2017 });
2018 $goog$array$forEach$$($removedAnnotations$$, function($annotation$$3$$) {
2019 $goog$array$remove$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_bufferedForRemoval$, $annotation$$3$$)
2020 });
2021 var $settings$$1$$ = $JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedItemSettings$.get($item_src$$);
2022 $settings$$1$$ ? ($settings$$1$$.$hide_selection_widget$ && $annotator$$1$$.$hideSelectionWidget$(), $settings$$1$$.$hide_annotations$ && $annotator$$1$$.$hideAnnotations$(), $JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedItemSettings$.remove($item_src$$)) : ($JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedGlobalSettings$.$hide_selection_widget$ && $annotator$$1$$.$hideSelectionWidget$(), $JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedGlobalSettings$.$hide_annotations$ &&
2023 $annotator$$1$$.$hideAnnotations$());
2024 $JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedProperties$ && $annotator$$1$$.$setProperties$($JSCompiler_StaticMethods__initAnnotator$self$$.$_cachedProperties$);
2025 $JSCompiler_StaticMethods__initAnnotator$self$$.$_annotators$.set($item_src$$, $annotator$$1$$);
2026 $goog$array$remove$$($JSCompiler_StaticMethods__initAnnotator$self$$.$_itemsToLoad$, $item$$1$$)
2027 }
2028}
2029function $JSCompiler_StaticMethods__lazyLoad$$($JSCompiler_StaticMethods__lazyLoad$self$$) {
2030 var $item$$2$$, $i$$104$$;
2031 for($i$$104$$ = $JSCompiler_StaticMethods__lazyLoad$self$$.$_itemsToLoad$.length;0 < $i$$104$$;$i$$104$$--) {
2032 for(var $el$$inline_490$$ = $item$$2$$ = $JSCompiler_StaticMethods__lazyLoad$self$$.$_itemsToLoad$[$i$$104$$ - 1], $top$$inline_491$$ = $el$$inline_490$$.offsetTop, $left$$inline_492$$ = $el$$inline_490$$.offsetLeft, $width$$inline_493$$ = $el$$inline_490$$.offsetWidth, $height$$inline_494$$ = $el$$inline_490$$.offsetHeight;$el$$inline_490$$.offsetParent;) {
2033 $el$$inline_490$$ = $el$$inline_490$$.offsetParent, $top$$inline_491$$ += $el$$inline_490$$.offsetTop, $left$$inline_492$$ += $el$$inline_490$$.offsetLeft
2034 }
2035 $top$$inline_491$$ < window.pageYOffset + window.innerHeight && ($left$$inline_492$$ < window.pageXOffset + window.innerWidth && $top$$inline_491$$ + $height$$inline_494$$ > window.pageYOffset && $left$$inline_492$$ + $width$$inline_493$$ > window.pageXOffset) && $JSCompiler_StaticMethods__initAnnotator$$($JSCompiler_StaticMethods__lazyLoad$self$$, $item$$2$$)
2036 }
2037}
2038function $JSCompiler_StaticMethods__setAnnotationVisibility$$($JSCompiler_StaticMethods__setAnnotationVisibility$self$$, $opt_item_url$$, $visibility$$) {
2039 if($opt_item_url$$) {
2040 var $annotator$$3$$ = $JSCompiler_StaticMethods__setAnnotationVisibility$self$$.$_annotators$.get($opt_item_url$$);
2041 $annotator$$3$$ ? $visibility$$ ? $annotator$$3$$.$showAnnotations$() : $annotator$$3$$.$hideAnnotations$() : $JSCompiler_StaticMethods__getSettings$$($JSCompiler_StaticMethods__setAnnotationVisibility$self$$, $opt_item_url$$).$hide_annotations$ = $visibility$$
2042 }else {
2043 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$($JSCompiler_StaticMethods__setAnnotationVisibility$self$$.$_annotators$), function($annotator$$4$$) {
2044 $visibility$$ ? $annotator$$4$$.$showAnnotations$() : $annotator$$4$$.$hideAnnotations$()
2045 }), $JSCompiler_StaticMethods__setAnnotationVisibility$self$$.$_cachedGlobalSettings$.$hide_annotations$ = !$visibility$$, $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$($JSCompiler_StaticMethods__setAnnotationVisibility$self$$.$_cachedItemSettings$), function($settings$$2$$) {
2046 $settings$$2$$.$hide_annotations$ = !$visibility$$
2047 })
2048 }
2049}
2050function $JSCompiler_StaticMethods__setSelectionWidgetVisibility$$($JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$, $opt_item_url$$1$$, $visibility$$1$$) {
2051 if($opt_item_url$$1$$) {
2052 var $annotator$$5$$ = $JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$.$_annotators$.get($opt_item_url$$1$$);
2053 $annotator$$5$$ ? $visibility$$1$$ ? $annotator$$5$$.$showSelectionWidget$() : $annotator$$5$$.$hideSelectionWidget$() : $JSCompiler_StaticMethods__getSettings$$($JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$, $opt_item_url$$1$$).$hide_selection_widget$ = $visibility$$1$$
2054 }else {
2055 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$($JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$.$_annotators$), function($annotator$$6$$) {
2056 $visibility$$1$$ ? $annotator$$6$$.$showSelectionWidget$() : $annotator$$6$$.$hideSelectionWidget$()
2057 }), $JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$.$_cachedGlobalSettings$.$hide_selection_widget$ = !$visibility$$1$$, $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$($JSCompiler_StaticMethods__setSelectionWidgetVisibility$self$$.$_cachedItemSettings$), function($settings$$3$$) {
2058 $settings$$3$$.$hide_selection_widget$ = !$visibility$$1$$
2059 })
2060 }
2061}
2062$JSCompiler_prototypeAlias$$ = $annotorious$mediatypes$Module$$.prototype;
2063$JSCompiler_prototypeAlias$$.$activateSelector$ = function $$JSCompiler_prototypeAlias$$$$activateSelector$$($opt_item_url_or_callback$$, $opt_callback$$5$$) {
2064 var $annotator$$7_item_url$$1$$ = $JSCompiler_alias_VOID$$, $callback$$34$$ = $JSCompiler_alias_VOID$$;
2065 $goog$isString$$($opt_item_url_or_callback$$) ? ($annotator$$7_item_url$$1$$ = $opt_item_url_or_callback$$, $callback$$34$$ = $opt_callback$$5$$) : $goog$isFunction$$($opt_item_url_or_callback$$) && ($callback$$34$$ = $opt_item_url_or_callback$$);
2066 $annotator$$7_item_url$$1$$ ? ($annotator$$7_item_url$$1$$ = this.$_annotators$.get($annotator$$7_item_url$$1$$)) && $annotator$$7_item_url$$1$$.$activateSelector$($callback$$34$$) : $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$8$$) {
2067 $annotator$$8$$.$activateSelector$($callback$$34$$)
2068 })
2069};
2070$JSCompiler_prototypeAlias$$.$addAnnotation$ = function $$JSCompiler_prototypeAlias$$$$addAnnotation$$($annotation$$4$$, $opt_replace$$1$$) {
2071 if($JSCompiler_StaticMethods_annotatesItem$$(this, $annotation$$4$$.src)) {
2072 var $annotator$$9$$ = this.$_annotators$.get($annotation$$4$$.src);
2073 $annotator$$9$$ ? $annotator$$9$$.$addAnnotation$($annotation$$4$$, $opt_replace$$1$$) : (this.$_bufferedForAdding$.push($annotation$$4$$), $opt_replace$$1$$ && $goog$array$remove$$(this.$_bufferedForAdding$, $opt_replace$$1$$))
2074 }
2075};
2076$JSCompiler_prototypeAlias$$.$addHandler$ = function $$JSCompiler_prototypeAlias$$$$addHandler$$($type$$83$$, $handler$$8$$) {
2077 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$10$$) {
2078 $annotator$$10$$.$addHandler$($type$$83$$, $handler$$8$$)
2079 });
2080 this.$_eventHandlers$.push({type:$type$$83$$, $handler$:$handler$$8$$})
2081};
2082$JSCompiler_prototypeAlias$$.$addPlugin$ = function $$JSCompiler_prototypeAlias$$$$addPlugin$$($plugin$$2$$) {
2083 this.$_plugins$.push($plugin$$2$$);
2084 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$11$$) {
2085 if($plugin$$2$$.onInitAnnotator) {
2086 $plugin$$2$$.onInitAnnotator($annotator$$11$$)
2087 }
2088 })
2089};
2090function $JSCompiler_StaticMethods_annotatesItem$$($JSCompiler_StaticMethods_annotatesItem$self$$, $item_url$$2$$) {
2091 return $goog$structs$Map$hasKey_$$($JSCompiler_StaticMethods_annotatesItem$self$$.$_annotators$.$map_$, $item_url$$2$$) ? $JSCompiler_alias_TRUE$$ : $goog$array$find$$($JSCompiler_StaticMethods_annotatesItem$self$$.$_itemsToLoad$, function($item$$4$$) {
2092 return $JSCompiler_StaticMethods_annotatesItem$self$$.$getItemURL$($item$$4$$) == $item_url$$2$$
2093 }) != $JSCompiler_alias_NULL$$
2094}
2095$JSCompiler_prototypeAlias$$.$destroy$ = function $$JSCompiler_prototypeAlias$$$$destroy$$($annotator$$12_opt_item_url$$2$$) {
2096 $annotator$$12_opt_item_url$$2$$ ? ($annotator$$12_opt_item_url$$2$$ = this.$_annotators$.get($annotator$$12_opt_item_url$$2$$)) && $annotator$$12_opt_item_url$$2$$.$destroy$() : ($goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$13$$) {
2097 $annotator$$13$$.$destroy$()
2098 }), this.$_annotators$.clear())
2099};
2100$JSCompiler_prototypeAlias$$.$getActiveSelector$ = function $$JSCompiler_prototypeAlias$$$$getActiveSelector$$($annotator$$14_item_url$$3$$) {
2101 if($JSCompiler_StaticMethods_annotatesItem$$(this, $annotator$$14_item_url$$3$$) && ($annotator$$14_item_url$$3$$ = this.$_annotators$.get($annotator$$14_item_url$$3$$))) {
2102 return $annotator$$14_item_url$$3$$.$getActiveSelector$().getName()
2103 }
2104};
2105$JSCompiler_prototypeAlias$$.$getAnnotations$ = function $$JSCompiler_prototypeAlias$$$$getAnnotations$$($opt_item_url$$3$$) {
2106 if($opt_item_url$$3$$) {
2107 var $annotator$$15$$ = this.$_annotators$.get($opt_item_url$$3$$);
2108 return $annotator$$15$$ ? $annotator$$15$$.$getAnnotations$() : $goog$array$filter$$(this.$_bufferedForAdding$, function($annotation$$5$$) {
2109 return $annotation$$5$$.src == $opt_item_url$$3$$
2110 })
2111 }
2112 var $annotations$$ = [];
2113 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$16$$) {
2114 $goog$array$extend$$($annotations$$, $annotator$$16$$.$getAnnotations$())
2115 });
2116 $goog$array$extend$$($annotations$$, this.$_bufferedForAdding$);
2117 return $annotations$$
2118};
2119$JSCompiler_prototypeAlias$$.$getAvailableSelectors$ = function $$JSCompiler_prototypeAlias$$$$getAvailableSelectors$$($annotator$$17_item_url$$4$$) {
2120 if($JSCompiler_StaticMethods_annotatesItem$$(this, $annotator$$17_item_url$$4$$) && ($annotator$$17_item_url$$4$$ = this.$_annotators$.get($annotator$$17_item_url$$4$$))) {
2121 return $goog$array$map$$($annotator$$17_item_url$$4$$.$getAvailableSelectors$(), function($selector$$2$$) {
2122 return $selector$$2$$.getName()
2123 })
2124 }
2125};
2126$JSCompiler_prototypeAlias$$.$hideAnnotations$ = function $$JSCompiler_prototypeAlias$$$$hideAnnotations$$($opt_item_url$$4$$) {
2127 $JSCompiler_StaticMethods__setAnnotationVisibility$$(this, $opt_item_url$$4$$, $JSCompiler_alias_FALSE$$)
2128};
2129$JSCompiler_prototypeAlias$$.$hideSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$hideSelectionWidget$$($opt_item_url$$5$$) {
2130 $JSCompiler_StaticMethods__setSelectionWidgetVisibility$$(this, $opt_item_url$$5$$, $JSCompiler_alias_FALSE$$)
2131};
2132$JSCompiler_prototypeAlias$$.$highlightAnnotation$ = function $$JSCompiler_prototypeAlias$$$$highlightAnnotation$$($annotation$$6$$) {
2133 if($annotation$$6$$) {
2134 if($JSCompiler_StaticMethods_annotatesItem$$(this, $annotation$$6$$.src)) {
2135 var $annotator$$18$$ = this.$_annotators$.get($annotation$$6$$.src);
2136 $annotator$$18$$ && $annotator$$18$$.$highlightAnnotation$($annotation$$6$$)
2137 }
2138 }else {
2139 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$19$$) {
2140 $annotator$$19$$.$highlightAnnotation$()
2141 })
2142 }
2143};
2144$JSCompiler_prototypeAlias$$.init = function $$JSCompiler_prototypeAlias$$$init$() {
2145 this.$_preLoad$ && $goog$array$extend$$(this.$_itemsToLoad$, this.$_preLoad$());
2146 $JSCompiler_StaticMethods__lazyLoad$$(this);
2147 var $self$$4$$ = this, $key$$64$$ = $goog$events$listen$$(window, "scroll", function() {
2148 0 < $self$$4$$.$_itemsToLoad$.length ? $JSCompiler_StaticMethods__lazyLoad$$($self$$4$$) : $goog$events$unlistenByKey$$($key$$64$$)
2149 })
2150};
2151$JSCompiler_prototypeAlias$$.$makeAnnotatable$ = function $$JSCompiler_prototypeAlias$$$$makeAnnotatable$$($item$$5$$) {
2152 this.$supports$($item$$5$$) && $JSCompiler_StaticMethods__initAnnotator$$(this, $item$$5$$)
2153};
2154$JSCompiler_prototypeAlias$$.$removeAnnotation$ = function $$JSCompiler_prototypeAlias$$$$removeAnnotation$$($annotation$$7$$) {
2155 if($JSCompiler_StaticMethods_annotatesItem$$(this, $annotation$$7$$.src)) {
2156 var $annotator$$20$$ = this.$_annotators$.get($annotation$$7$$.src);
2157 $annotator$$20$$ ? $annotator$$20$$.$removeAnnotation$($annotation$$7$$) : this.$_bufferedForRemoval$.push($annotation$$7$$)
2158 }
2159};
2160$JSCompiler_prototypeAlias$$.$setActiveSelector$ = function $$JSCompiler_prototypeAlias$$$$setActiveSelector$$($item_url$$5$$, $selector$$3$$) {
2161 if($JSCompiler_StaticMethods_annotatesItem$$(this, $item_url$$5$$)) {
2162 var $annotator$$21$$ = this.$_annotators$.get($item_url$$5$$);
2163 $annotator$$21$$ && $annotator$$21$$.$setActiveSelector$($selector$$3$$)
2164 }
2165};
2166$JSCompiler_prototypeAlias$$.$setProperties$ = function $$JSCompiler_prototypeAlias$$$$setProperties$$($props$$1$$) {
2167 this.$_cachedProperties$ = $props$$1$$;
2168 $goog$array$forEach$$($JSCompiler_StaticMethods_getValues$$(this.$_annotators$), function($annotator$$22$$) {
2169 $annotator$$22$$.$setProperties$($props$$1$$)
2170 })
2171};
2172$JSCompiler_prototypeAlias$$.$showAnnotations$ = function $$JSCompiler_prototypeAlias$$$$showAnnotations$$($opt_item_url$$6$$) {
2173 $JSCompiler_StaticMethods__setAnnotationVisibility$$(this, $opt_item_url$$6$$, $JSCompiler_alias_TRUE$$)
2174};
2175$JSCompiler_prototypeAlias$$.$showSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$showSelectionWidget$$($opt_item_url$$7$$) {
2176 $JSCompiler_StaticMethods__setSelectionWidgetVisibility$$(this, $opt_item_url$$7$$, $JSCompiler_alias_TRUE$$)
2177};
2178function $goog$soy$renderAsElement$$($template$$2$$, $opt_templateData$$2$$) {
2179 var $wrapper$$4$$ = $goog$dom$getDomHelper$$().createElement("DIV");
2180 $wrapper$$4$$.innerHTML = $template$$2$$($opt_templateData$$2$$ || $goog$soy$defaultTemplateData_$$, $JSCompiler_alias_VOID$$, $JSCompiler_alias_VOID$$);
2181 if(1 == $wrapper$$4$$.childNodes.length) {
2182 var $firstChild$$ = $wrapper$$4$$.firstChild;
2183 if(1 == $firstChild$$.nodeType) {
2184 return $firstChild$$
2185 }
2186 }
2187 return $wrapper$$4$$
2188}
2189var $goog$soy$defaultTemplateData_$$ = {};
2190function $goog$string$StringBuffer$$($opt_a1$$, $var_args$$69$$) {
2191 $opt_a1$$ != $JSCompiler_alias_NULL$$ && this.append.apply(this, arguments)
2192}
2193$JSCompiler_prototypeAlias$$ = $goog$string$StringBuffer$$.prototype;
2194$JSCompiler_prototypeAlias$$.$buffer_$ = "";
2195$JSCompiler_prototypeAlias$$.set = function $$JSCompiler_prototypeAlias$$$set$($s$$19$$) {
2196 this.$buffer_$ = "" + $s$$19$$
2197};
2198$JSCompiler_prototypeAlias$$.append = function $$JSCompiler_prototypeAlias$$$append$($a1$$, $opt_a2$$, $var_args$$70$$) {
2199 this.$buffer_$ += $a1$$;
2200 if($opt_a2$$ != $JSCompiler_alias_NULL$$) {
2201 for(var $i$$105$$ = 1;$i$$105$$ < arguments.length;$i$$105$$++) {
2202 this.$buffer_$ += arguments[$i$$105$$]
2203 }
2204 }
2205 return this
2206};
2207$JSCompiler_prototypeAlias$$.clear = function $$JSCompiler_prototypeAlias$$$clear$() {
2208 this.$buffer_$ = ""
2209};
2210$JSCompiler_prototypeAlias$$.toString = $JSCompiler_get$$("$buffer_$");
2211/*
2212 Portions of this code are from the google-caja project, received by
2213 Google under the Apache license (http://code.google.com/p/google-caja/).
2214 All other code is Copyright 2009 Google, Inc. All Rights Reserved.
2215
2216// Copyright (C) 2006 Google Inc.
2217//
2218// Licensed under the Apache License, Version 2.0 (the "License");
2219// you may not use this file except in compliance with the License.
2220// You may obtain a copy of the License at
2221//
2222// http://www.apache.org/licenses/LICENSE-2.0
2223//
2224// Unless required by applicable law or agreed to in writing, software
2225// distributed under the License is distributed on an "AS IS" BASIS,
2226// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2227// See the License for the specific language governing permissions and
2228// limitations under the License.
2229
2230*/
2231function $goog$string$html$HtmlParser$$() {
2232}
2233var $goog$string$html$HtmlParser$Entities$$ = {$lt$:"<", $gt$:">", $amp$:"&", $nbsp$:"\u00a0", $quot$:'"', $apos$:"'"}, $goog$string$html$HtmlParser$Elements$$ = {a:0, abbr:0, acronym:0, address:0, applet:16, area:2, b:0, base:18, basefont:18, bdo:0, big:0, blockquote:0, body:49, br:2, button:0, caption:0, center:0, cite:0, code:0, col:2, colgroup:1, dd:1, del:0, dfn:0, dir:0, div:0, dl:0, dt:1, em:0, fieldset:0, font:0, form:0, frame:18, frameset:16, h1:0, h2:0, h3:0, h4:0, h5:0, h6:0, head:49,
2234hr:2, html:49, i:0, iframe:20, img:2, input:2, ins:0, isindex:18, kbd:0, label:0, legend:0, li:1, link:18, map:0, menu:0, meta:18, noframes:20, noscript:20, object:16, ol:0, optgroup:0, option:1, p:1, param:18, pre:0, q:0, s:0, samp:0, script:20, select:0, small:0, span:0, strike:0, strong:0, style:20, sub:0, sup:0, table:0, tbody:1, td:1, textarea:8, tfoot:1, th:1, thead:1, title:24, tr:1, tt:0, u:0, ul:0, "var":0}, $goog$string$html$HtmlParser$AMP_RE_$$ = /&/g, $goog$string$html$HtmlParser$LOOSE_AMP_RE_$$ =
2235/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi, $goog$string$html$HtmlParser$LT_RE_$$ = /</g, $goog$string$html$HtmlParser$GT_RE_$$ = />/g, $goog$string$html$HtmlParser$QUOTE_RE_$$ = /\"/g, $goog$string$html$HtmlParser$EQUALS_RE_$$ = /=/g, $goog$string$html$HtmlParser$NULL_RE_$$ = /\0/g, $goog$string$html$HtmlParser$ENTITY_RE_$$ = /&(#\d+|#x[0-9A-Fa-f]+|\w+);/g, $goog$string$html$HtmlParser$DECIMAL_ESCAPE_RE_$$ = /^#(\d+)$/, $goog$string$html$HtmlParser$HEX_ESCAPE_RE_$$ = /^#x([0-9A-Fa-f]+)$/,
2236$goog$string$html$HtmlParser$INSIDE_TAG_TOKEN_$$ = RegExp("^\\s*(?:(?:([a-z][a-z-]*)(\\s*=\\s*(\"[^\"]*\"|'[^']*'|(?=[a-z][a-z-]*\\s*=)|[^>\"'\\s]*))?)|(/?>)|[^a-z\\s>]+)", "i"), $goog$string$html$HtmlParser$OUTSIDE_TAG_TOKEN_$$ = RegExp("^(?:&(\\#[0-9]+|\\#[x][0-9a-f]+|\\w+);|<[!]--[\\s\\S]*?--\>|<!\\w[^>]*>|<\\?[^>*]*>|<(/)?([a-z][a-z0-9]*)|([^<&>]+)|([<&>]))", "i");
2237$goog$string$html$HtmlParser$$.prototype.parse = function $$goog$string$html$HtmlParser$$$$parse$($handler$$9$$, $htmlText$$) {
2238 var $htmlLower_i$$inline_505$$ = $JSCompiler_alias_NULL$$, $dataEnd_inTag$$1$$ = $JSCompiler_alias_FALSE$$, $attribs$$ = [], $tagName$$6$$, $eflags$$, $openTag$$;
2239 $handler$$9$$.$stack_$ = [];
2240 for($handler$$9$$.$ignoring_$ = $JSCompiler_alias_FALSE$$;$htmlText$$;) {
2241 var $decodedValue_encodedValue_m$$ = $htmlText$$.match($dataEnd_inTag$$1$$ ? $goog$string$html$HtmlParser$INSIDE_TAG_TOKEN_$$ : $goog$string$html$HtmlParser$OUTSIDE_TAG_TOKEN_$$), $htmlText$$ = $htmlText$$.substring($decodedValue_encodedValue_m$$[0].length);
2242 if($dataEnd_inTag$$1$$) {
2243 if($decodedValue_encodedValue_m$$[1]) {
2244 var $attribName$$ = $decodedValue_encodedValue_m$$[1].toLowerCase();
2245 if($decodedValue_encodedValue_m$$[2]) {
2246 $decodedValue_encodedValue_m$$ = $decodedValue_encodedValue_m$$[3];
2247 switch($decodedValue_encodedValue_m$$.charCodeAt(0)) {
2248 case 34:
2249 ;
2250 case 39:
2251 $decodedValue_encodedValue_m$$ = $decodedValue_encodedValue_m$$.substring(1, $decodedValue_encodedValue_m$$.length - 1)
2252 }
2253 $decodedValue_encodedValue_m$$ = $decodedValue_encodedValue_m$$.replace($goog$string$html$HtmlParser$NULL_RE_$$, "").replace($goog$string$html$HtmlParser$ENTITY_RE_$$, $goog$bind$$(this.$lookupEntity_$, this))
2254 }else {
2255 $decodedValue_encodedValue_m$$ = $attribName$$
2256 }
2257 $attribs$$.push($attribName$$, $decodedValue_encodedValue_m$$)
2258 }else {
2259 $decodedValue_encodedValue_m$$[4] && ($eflags$$ !== $JSCompiler_alias_VOID$$ && ($openTag$$ ? $handler$$9$$.$startTag$ && $handler$$9$$.$startTag$($tagName$$6$$, $attribs$$) : $handler$$9$$.$endTag$ && $handler$$9$$.$endTag$($tagName$$6$$)), $openTag$$ && $eflags$$ & 12 && ($htmlLower_i$$inline_505$$ = $htmlLower_i$$inline_505$$ === $JSCompiler_alias_NULL$$ ? $htmlText$$.toLowerCase() : $htmlLower_i$$inline_505$$.substring($htmlLower_i$$inline_505$$.length - $htmlText$$.length), $dataEnd_inTag$$1$$ =
2260 $htmlLower_i$$inline_505$$.indexOf("</" + $tagName$$6$$), 0 > $dataEnd_inTag$$1$$ && ($dataEnd_inTag$$1$$ = $htmlText$$.length), $eflags$$ & 4 ? $handler$$9$$.$cdata$ && $handler$$9$$.$cdata$($htmlText$$.substring(0, $dataEnd_inTag$$1$$)) : $handler$$9$$.$rcdata$ && $handler$$9$$.$rcdata$($htmlText$$.substring(0, $dataEnd_inTag$$1$$).replace($goog$string$html$HtmlParser$LOOSE_AMP_RE_$$, "&amp;$1").replace($goog$string$html$HtmlParser$LT_RE_$$, "&lt;").replace($goog$string$html$HtmlParser$GT_RE_$$,
2261 "&gt;")), $htmlText$$ = $htmlText$$.substring($dataEnd_inTag$$1$$)), $tagName$$6$$ = $eflags$$ = $openTag$$ = $JSCompiler_alias_VOID$$, $attribs$$.length = 0, $dataEnd_inTag$$1$$ = $JSCompiler_alias_FALSE$$)
2262 }
2263 }else {
2264 if($decodedValue_encodedValue_m$$[1]) {
2265 $JSCompiler_StaticMethods_pcdata$$($handler$$9$$, $decodedValue_encodedValue_m$$[0])
2266 }else {
2267 if($decodedValue_encodedValue_m$$[3]) {
2268 $openTag$$ = !$decodedValue_encodedValue_m$$[2], $dataEnd_inTag$$1$$ = $JSCompiler_alias_TRUE$$, $tagName$$6$$ = $decodedValue_encodedValue_m$$[3].toLowerCase(), $eflags$$ = $goog$string$html$HtmlParser$Elements$$.hasOwnProperty($tagName$$6$$) ? $goog$string$html$HtmlParser$Elements$$[$tagName$$6$$] : $JSCompiler_alias_VOID$$
2269 }else {
2270 if($decodedValue_encodedValue_m$$[4]) {
2271 $JSCompiler_StaticMethods_pcdata$$($handler$$9$$, $decodedValue_encodedValue_m$$[4])
2272 }else {
2273 if($decodedValue_encodedValue_m$$[5]) {
2274 switch($decodedValue_encodedValue_m$$[5]) {
2275 case "<":
2276 $JSCompiler_StaticMethods_pcdata$$($handler$$9$$, "&lt;");
2277 break;
2278 case ">":
2279 $JSCompiler_StaticMethods_pcdata$$($handler$$9$$, "&gt;");
2280 break;
2281 default:
2282 $JSCompiler_StaticMethods_pcdata$$($handler$$9$$, "&amp;")
2283 }
2284 }
2285 }
2286 }
2287 }
2288 }
2289 }
2290 for($htmlLower_i$$inline_505$$ = $handler$$9$$.$stack_$.length;0 <= --$htmlLower_i$$inline_505$$;) {
2291 $handler$$9$$.$stringBuffer_$.append("</", $handler$$9$$.$stack_$[$htmlLower_i$$inline_505$$], ">")
2292 }
2293 $handler$$9$$.$stack_$.length = 0
2294};
2295$goog$string$html$HtmlParser$$.prototype.$lookupEntity_$ = function $$goog$string$html$HtmlParser$$$$$lookupEntity_$$($name$$70$$) {
2296 $name$$70$$ = $name$$70$$.toLowerCase();
2297 if($goog$string$html$HtmlParser$Entities$$.hasOwnProperty($name$$70$$)) {
2298 return $goog$string$html$HtmlParser$Entities$$[$name$$70$$]
2299 }
2300 var $m$$1$$ = $name$$70$$.match($goog$string$html$HtmlParser$DECIMAL_ESCAPE_RE_$$);
2301 return $m$$1$$ ? String.fromCharCode(parseInt($m$$1$$[1], 10)) : ($m$$1$$ = $name$$70$$.match($goog$string$html$HtmlParser$HEX_ESCAPE_RE_$$)) ? String.fromCharCode(parseInt($m$$1$$[1], 16)) : ""
2302};
2303function $goog$string$html$HtmlSaxHandler$$() {
2304}
2305;/*
2306 Portions of this code are from the google-caja project, received by
2307 Google under the Apache license (http://code.google.com/p/google-caja/).
2308 All other code is Copyright 2009 Google, Inc. All Rights Reserved.
2309
2310// Copyright (C) 2006 Google Inc.
2311//
2312// Licensed under the Apache License, Version 2.0 (the "License");
2313// you may not use this file except in compliance with the License.
2314// You may obtain a copy of the License at
2315//
2316// http://www.apache.org/licenses/LICENSE-2.0
2317//
2318// Unless required by applicable law or agreed to in writing, software
2319// distributed under the License is distributed on an "AS IS" BASIS,
2320// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2321// See the License for the specific language governing permissions and
2322// limitations under the License.
2323
2324*/
2325function $goog$string$html$HtmlSanitizer$$($stringBuffer$$1$$, $opt_urlPolicy$$1$$, $opt_nmTokenPolicy$$1$$) {
2326 this.$stringBuffer_$ = $stringBuffer$$1$$;
2327 this.$stack_$ = [];
2328 this.$ignoring_$ = $JSCompiler_alias_FALSE$$;
2329 this.$urlPolicy_$ = $opt_urlPolicy$$1$$;
2330 this.$nmTokenPolicy_$ = $opt_nmTokenPolicy$$1$$
2331}
2332$goog$inherits$$($goog$string$html$HtmlSanitizer$$, $goog$string$html$HtmlSaxHandler$$);
2333var $goog$string$html$HtmlSanitizer$Attributes$$ = {"*::class":9, "*::dir":0, "*::id":4, "*::lang":0, "*::onclick":2, "*::ondblclick":2, "*::onkeydown":2, "*::onkeypress":2, "*::onkeyup":2, "*::onload":2, "*::onmousedown":2, "*::onmousemove":2, "*::onmouseout":2, "*::onmouseover":2, "*::onmouseup":2, "*::style":3, "*::title":0, "*::accesskey":0, "*::tabindex":0, "*::onfocus":2, "*::onblur":2, "a::coords":0, "a::href":1, "a::hreflang":0, "a::name":7, "a::onblur":2, "a::rel":0, "a::rev":0, "a::shape":0,
2334"a::target":10, "a::type":0, "area::accesskey":0, "area::alt":0, "area::coords":0, "area::href":1, "area::nohref":0, "area::onfocus":2, "area::shape":0, "area::tabindex":0, "area::target":10, "bdo::dir":0, "blockquote::cite":1, "br::clear":0, "button::accesskey":0, "button::disabled":0, "button::name":8, "button::onblur":2, "button::onfocus":2, "button::tabindex":0, "button::type":0, "button::value":0, "caption::align":0, "col::align":0, "col::char":0, "col::charoff":0, "col::span":0, "col::valign":0,
2335"col::width":0, "colgroup::align":0, "colgroup::char":0, "colgroup::charoff":0, "colgroup::span":0, "colgroup::valign":0, "colgroup::width":0, "del::cite":1, "del::datetime":0, "dir::compact":0, "div::align":0, "dl::compact":0, "font::color":0, "font::face":0, "font::size":0, "form::accept":0, "form::action":1, "form::autocomplete":0, "form::enctype":0, "form::method":0, "form::name":7, "form::onreset":2, "form::onsubmit":2, "form::target":10, "h1::align":0, "h2::align":0, "h3::align":0, "h4::align":0,
2336"h5::align":0, "h6::align":0, "hr::align":0, "hr::noshade":0, "hr::size":0, "hr::width":0, "img::align":0, "img::alt":0, "img::border":0, "img::height":0, "img::hspace":0, "img::ismap":0, "img::longdesc":1, "img::name":7, "img::src":1, "img::usemap":11, "img::vspace":0, "img::width":0, "input::accept":0, "input::accesskey":0, "input::autocomplete":0, "input::align":0, "input::alt":0, "input::checked":0, "input::disabled":0, "input::ismap":0, "input::maxlength":0, "input::name":8, "input::onblur":2,
2337"input::onchange":2, "input::onfocus":2, "input::onselect":2, "input::readonly":0, "input::size":0, "input::src":1, "input::tabindex":0, "input::type":0, "input::usemap":11, "input::value":0, "ins::cite":1, "ins::datetime":0, "label::accesskey":0, "label::for":5, "label::onblur":2, "label::onfocus":2, "legend::accesskey":0, "legend::align":0, "li::type":0, "li::value":0, "map::name":7, "menu::compact":0, "ol::compact":0, "ol::start":0, "ol::type":0, "optgroup::disabled":0, "optgroup::label":0, "option::disabled":0,
2338"option::label":0, "option::selected":0, "option::value":0, "p::align":0, "pre::width":0, "q::cite":1, "select::disabled":0, "select::multiple":0, "select::name":8, "select::onblur":2, "select::onchange":2, "select::onfocus":2, "select::size":0, "select::tabindex":0, "table::align":0, "table::bgcolor":0, "table::border":0, "table::cellpadding":0, "table::cellspacing":0, "table::frame":0, "table::rules":0, "table::summary":0, "table::width":0, "tbody::align":0, "tbody::char":0, "tbody::charoff":0,
2339"tbody::valign":0, "td::abbr":0, "td::align":0, "td::axis":0, "td::bgcolor":0, "td::char":0, "td::charoff":0, "td::colspan":0, "td::headers":6, "td::height":0, "td::nowrap":0, "td::rowspan":0, "td::scope":0, "td::valign":0, "td::width":0, "textarea::accesskey":0, "textarea::cols":0, "textarea::disabled":0, "textarea::name":8, "textarea::onblur":2, "textarea::onchange":2, "textarea::onfocus":2, "textarea::onselect":2, "textarea::readonly":0, "textarea::rows":0, "textarea::tabindex":0, "tfoot::align":0,
2340"tfoot::char":0, "tfoot::charoff":0, "tfoot::valign":0, "th::abbr":0, "th::align":0, "th::axis":0, "th::bgcolor":0, "th::char":0, "th::charoff":0, "th::colspan":0, "th::headers":6, "th::height":0, "th::nowrap":0, "th::rowspan":0, "th::scope":0, "th::valign":0, "th::width":0, "thead::align":0, "thead::char":0, "thead::charoff":0, "thead::valign":0, "tr::align":0, "tr::bgcolor":0, "tr::char":0, "tr::charoff":0, "tr::valign":0, "ul::compact":0, "ul::type":0};
2341$goog$string$html$HtmlSanitizer$$.prototype.$startTag$ = function $$goog$string$html$HtmlSanitizer$$$$$startTag$$($tagName$$7$$, $attribs$$1$$) {
2342 if(!this.$ignoring_$ && $goog$string$html$HtmlParser$Elements$$.hasOwnProperty($tagName$$7$$)) {
2343 var $eflags$$1_i$$106$$ = $goog$string$html$HtmlParser$Elements$$[$tagName$$7$$];
2344 if(!($eflags$$1_i$$106$$ & 32)) {
2345 if($eflags$$1_i$$106$$ & 16) {
2346 this.$ignoring_$ = !($eflags$$1_i$$106$$ & 2)
2347 }else {
2348 for(var $attribs$$inline_509_n$$7$$ = $attribs$$1$$, $attribName$$1_i$$inline_510$$ = 0;$attribName$$1_i$$inline_510$$ < $attribs$$inline_509_n$$7$$.length;$attribName$$1_i$$inline_510$$ += 2) {
2349 var $attribName$$inline_511_value$$75$$ = $attribs$$inline_509_n$$7$$[$attribName$$1_i$$inline_510$$], $value$$inline_512$$ = $attribs$$inline_509_n$$7$$[$attribName$$1_i$$inline_510$$ + 1], $atype$$inline_513$$ = $JSCompiler_alias_NULL$$, $attribKey$$inline_514$$;
2350 if(($attribKey$$inline_514$$ = $tagName$$7$$ + "::" + $attribName$$inline_511_value$$75$$, $goog$string$html$HtmlSanitizer$Attributes$$.hasOwnProperty($attribKey$$inline_514$$)) || ($attribKey$$inline_514$$ = "*::" + $attribName$$inline_511_value$$75$$, $goog$string$html$HtmlSanitizer$Attributes$$.hasOwnProperty($attribKey$$inline_514$$))) {
2351 $atype$$inline_513$$ = $goog$string$html$HtmlSanitizer$Attributes$$[$attribKey$$inline_514$$]
2352 }
2353 if($atype$$inline_513$$ !== $JSCompiler_alias_NULL$$) {
2354 switch($atype$$inline_513$$) {
2355 case 0:
2356 break;
2357 case 2:
2358 ;
2359 case 3:
2360 $value$$inline_512$$ = $JSCompiler_alias_NULL$$;
2361 break;
2362 case 4:
2363 ;
2364 case 5:
2365 ;
2366 case 6:
2367 ;
2368 case 7:
2369 ;
2370 case 8:
2371 ;
2372 case 9:
2373 $value$$inline_512$$ = this.$nmTokenPolicy_$ ? this.$nmTokenPolicy_$($value$$inline_512$$) : $value$$inline_512$$;
2374 break;
2375 case 1:
2376 $value$$inline_512$$ = this.$urlPolicy_$ && this.$urlPolicy_$($value$$inline_512$$);
2377 break;
2378 case 11:
2379 $value$$inline_512$$ && "#" === $value$$inline_512$$.charAt(0) ? ($value$$inline_512$$ = this.$nmTokenPolicy_$ ? this.$nmTokenPolicy_$($value$$inline_512$$) : $value$$inline_512$$) && ($value$$inline_512$$ = "#" + $value$$inline_512$$) : $value$$inline_512$$ = $JSCompiler_alias_NULL$$;
2380 break;
2381 default:
2382 $value$$inline_512$$ = $JSCompiler_alias_NULL$$
2383 }
2384 }else {
2385 $value$$inline_512$$ = $JSCompiler_alias_NULL$$
2386 }
2387 $attribs$$inline_509_n$$7$$[$attribName$$1_i$$inline_510$$ + 1] = $value$$inline_512$$
2388 }
2389 if($attribs$$1$$ = $attribs$$inline_509_n$$7$$) {
2390 $eflags$$1_i$$106$$ & 2 || this.$stack_$.push($tagName$$7$$);
2391 this.$stringBuffer_$.append("<", $tagName$$7$$);
2392 $eflags$$1_i$$106$$ = 0;
2393 for($attribs$$inline_509_n$$7$$ = $attribs$$1$$.length;$eflags$$1_i$$106$$ < $attribs$$inline_509_n$$7$$;$eflags$$1_i$$106$$ += 2) {
2394 $attribName$$1_i$$inline_510$$ = $attribs$$1$$[$eflags$$1_i$$106$$], $attribName$$inline_511_value$$75$$ = $attribs$$1$$[$eflags$$1_i$$106$$ + 1], $attribName$$inline_511_value$$75$$ !== $JSCompiler_alias_NULL$$ && $attribName$$inline_511_value$$75$$ !== $JSCompiler_alias_VOID$$ && this.$stringBuffer_$.append(" ", $attribName$$1_i$$inline_510$$, '="', $attribName$$inline_511_value$$75$$.replace($goog$string$html$HtmlParser$AMP_RE_$$, "&amp;").replace($goog$string$html$HtmlParser$LT_RE_$$,
2395 "&lt;").replace($goog$string$html$HtmlParser$GT_RE_$$, "&gt;").replace($goog$string$html$HtmlParser$QUOTE_RE_$$, "&#34;").replace($goog$string$html$HtmlParser$EQUALS_RE_$$, "&#61;"), '"')
2396 }
2397 this.$stringBuffer_$.append(">")
2398 }
2399 }
2400 }
2401 }
2402};
2403$goog$string$html$HtmlSanitizer$$.prototype.$endTag$ = function $$goog$string$html$HtmlSanitizer$$$$$endTag$$($tagName$$8$$) {
2404 if(this.$ignoring_$) {
2405 this.$ignoring_$ = $JSCompiler_alias_FALSE$$
2406 }else {
2407 if($goog$string$html$HtmlParser$Elements$$.hasOwnProperty($tagName$$8$$)) {
2408 var $eflags$$2_index$$54$$ = $goog$string$html$HtmlParser$Elements$$[$tagName$$8$$];
2409 if(!($eflags$$2_index$$54$$ & 50)) {
2410 if($eflags$$2_index$$54$$ & 1) {
2411 for($eflags$$2_index$$54$$ = this.$stack_$.length;0 <= --$eflags$$2_index$$54$$;) {
2412 var $stackEl$$ = this.$stack_$[$eflags$$2_index$$54$$];
2413 if($stackEl$$ === $tagName$$8$$) {
2414 break
2415 }
2416 if(!($goog$string$html$HtmlParser$Elements$$[$stackEl$$] & 1)) {
2417 return
2418 }
2419 }
2420 }else {
2421 for($eflags$$2_index$$54$$ = this.$stack_$.length;0 <= --$eflags$$2_index$$54$$ && this.$stack_$[$eflags$$2_index$$54$$] !== $tagName$$8$$;) {
2422 }
2423 }
2424 if(!(0 > $eflags$$2_index$$54$$)) {
2425 for(var $i$$107$$ = this.$stack_$.length;--$i$$107$$ > $eflags$$2_index$$54$$;) {
2426 $stackEl$$ = this.$stack_$[$i$$107$$], $goog$string$html$HtmlParser$Elements$$[$stackEl$$] & 1 || this.$stringBuffer_$.append("</", $stackEl$$, ">")
2427 }
2428 this.$stack_$.length = $eflags$$2_index$$54$$;
2429 this.$stringBuffer_$.append("</", $tagName$$8$$, ">")
2430 }
2431 }
2432 }
2433 }
2434};
2435function $JSCompiler_StaticMethods_pcdata$$($JSCompiler_StaticMethods_pcdata$self$$, $text$$11$$) {
2436 $JSCompiler_StaticMethods_pcdata$self$$.$ignoring_$ || $JSCompiler_StaticMethods_pcdata$self$$.$stringBuffer_$.append($text$$11$$)
2437}
2438$goog$string$html$HtmlSanitizer$$.prototype.$rcdata$ = function $$goog$string$html$HtmlSanitizer$$$$$rcdata$$($text$$12$$) {
2439 this.$ignoring_$ || this.$stringBuffer_$.append($text$$12$$)
2440};
2441$goog$string$html$HtmlSanitizer$$.prototype.$cdata$ = function $$goog$string$html$HtmlSanitizer$$$$$cdata$$($text$$13$$) {
2442 this.$ignoring_$ || this.$stringBuffer_$.append($text$$13$$)
2443};
2444function $goog$events$KeyCodes$firesKeyPressEvent$$($keyCode$$, $opt_heldKeyCode$$, $opt_shiftKey$$, $opt_ctrlKey$$, $opt_altKey$$) {
2445 if(!$goog$userAgent$IE$$ && (!$goog$userAgent$WEBKIT$$ || !$goog$userAgent$isVersion$$("525"))) {
2446 return $JSCompiler_alias_TRUE$$
2447 }
2448 if($goog$userAgent$detectedMac_$$ && $opt_altKey$$) {
2449 return $goog$events$KeyCodes$isCharacterKey$$($keyCode$$)
2450 }
2451 if($opt_altKey$$ && !$opt_ctrlKey$$ || !$opt_shiftKey$$ && (17 == $opt_heldKeyCode$$ || 18 == $opt_heldKeyCode$$) || $goog$userAgent$IE$$ && $opt_ctrlKey$$ && $opt_heldKeyCode$$ == $keyCode$$) {
2452 return $JSCompiler_alias_FALSE$$
2453 }
2454 switch($keyCode$$) {
2455 case 13:
2456 return!($goog$userAgent$IE$$ && $goog$userAgent$isDocumentMode$$(9));
2457 case 27:
2458 return!$goog$userAgent$WEBKIT$$
2459 }
2460 return $goog$events$KeyCodes$isCharacterKey$$($keyCode$$)
2461}
2462function $goog$events$KeyCodes$isCharacterKey$$($keyCode$$1$$) {
2463 if(48 <= $keyCode$$1$$ && 57 >= $keyCode$$1$$ || 96 <= $keyCode$$1$$ && 106 >= $keyCode$$1$$ || 65 <= $keyCode$$1$$ && 90 >= $keyCode$$1$$ || $goog$userAgent$WEBKIT$$ && 0 == $keyCode$$1$$) {
2464 return $JSCompiler_alias_TRUE$$
2465 }
2466 switch($keyCode$$1$$) {
2467 case 32:
2468 ;
2469 case 63:
2470 ;
2471 case 107:
2472 ;
2473 case 109:
2474 ;
2475 case 110:
2476 ;
2477 case 111:
2478 ;
2479 case 186:
2480 ;
2481 case 59:
2482 ;
2483 case 189:
2484 ;
2485 case 187:
2486 ;
2487 case 61:
2488 ;
2489 case 188:
2490 ;
2491 case 190:
2492 ;
2493 case 191:
2494 ;
2495 case 192:
2496 ;
2497 case 222:
2498 ;
2499 case 219:
2500 ;
2501 case 220:
2502 ;
2503 case 221:
2504 return $JSCompiler_alias_TRUE$$;
2505 default:
2506 return $JSCompiler_alias_FALSE$$
2507 }
2508}
2509function $goog$events$KeyCodes$normalizeGeckoKeyCode$$($keyCode$$2$$) {
2510 switch($keyCode$$2$$) {
2511 case 61:
2512 return 187;
2513 case 59:
2514 return 186;
2515 case 224:
2516 return 91;
2517 case 0:
2518 return 224;
2519 default:
2520 return $keyCode$$2$$
2521 }
2522}
2523;function $goog$events$KeyHandler$$($opt_element$$11$$, $opt_capture$$6$$) {
2524 $goog$Disposable$$.call(this);
2525 $opt_element$$11$$ && $JSCompiler_StaticMethods_attach$$(this, $opt_element$$11$$, $opt_capture$$6$$)
2526}
2527$goog$inherits$$($goog$events$KeyHandler$$, $goog$events$EventTarget$$);
2528$JSCompiler_prototypeAlias$$ = $goog$events$KeyHandler$$.prototype;
2529$JSCompiler_prototypeAlias$$.$element_$ = $JSCompiler_alias_NULL$$;
2530$JSCompiler_prototypeAlias$$.$keyPressKey_$ = $JSCompiler_alias_NULL$$;
2531$JSCompiler_prototypeAlias$$.$keyDownKey_$ = $JSCompiler_alias_NULL$$;
2532$JSCompiler_prototypeAlias$$.$keyUpKey_$ = $JSCompiler_alias_NULL$$;
2533$JSCompiler_prototypeAlias$$.$lastKey_$ = -1;
2534$JSCompiler_prototypeAlias$$.$keyCode_$ = -1;
2535$JSCompiler_prototypeAlias$$.$altKey_$ = $JSCompiler_alias_FALSE$$;
2536var $goog$events$KeyHandler$safariKey_$$ = {3:13, 12:144, 63232:38, 63233:40, 63234:37, 63235:39, 63236:112, 63237:113, 63238:114, 63239:115, 63240:116, 63241:117, 63242:118, 63243:119, 63244:120, 63245:121, 63246:122, 63247:123, 63248:44, 63272:46, 63273:36, 63275:35, 63276:33, 63277:34, 63289:144, 63302:45}, $goog$events$KeyHandler$keyIdentifier_$$ = {Up:38, Down:40, Left:37, Right:39, Enter:13, F1:112, F2:113, F3:114, F4:115, F5:116, F6:117, F7:118, F8:119, F9:120, F10:121, F11:122, F12:123, "U+007F":46,
2537Home:36, End:35, PageUp:33, PageDown:34, Insert:45}, $goog$events$KeyHandler$USES_KEYDOWN_$$ = $goog$userAgent$IE$$ || $goog$userAgent$WEBKIT$$ && $goog$userAgent$isVersion$$("525"), $goog$events$KeyHandler$SAVE_ALT_FOR_KEYPRESS_$$ = $goog$userAgent$detectedMac_$$ && $goog$userAgent$GECKO$$;
2538$JSCompiler_prototypeAlias$$ = $goog$events$KeyHandler$$.prototype;
2539$JSCompiler_prototypeAlias$$.$handleKeyDown_$ = function $$JSCompiler_prototypeAlias$$$$handleKeyDown_$$($e$$36$$) {
2540 if($goog$userAgent$WEBKIT$$ && (17 == this.$lastKey_$ && !$e$$36$$.ctrlKey || 18 == this.$lastKey_$ && !$e$$36$$.altKey)) {
2541 this.$keyCode_$ = this.$lastKey_$ = -1
2542 }
2543 $goog$events$KeyHandler$USES_KEYDOWN_$$ && !$goog$events$KeyCodes$firesKeyPressEvent$$($e$$36$$.keyCode, this.$lastKey_$, $e$$36$$.shiftKey, $e$$36$$.ctrlKey, $e$$36$$.altKey) ? this.handleEvent($e$$36$$) : (this.$keyCode_$ = $goog$userAgent$GECKO$$ ? $goog$events$KeyCodes$normalizeGeckoKeyCode$$($e$$36$$.keyCode) : $e$$36$$.keyCode, $goog$events$KeyHandler$SAVE_ALT_FOR_KEYPRESS_$$ && (this.$altKey_$ = $e$$36$$.altKey))
2544};
2545$JSCompiler_prototypeAlias$$.$handleKeyup_$ = function $$JSCompiler_prototypeAlias$$$$handleKeyup_$$($e$$37$$) {
2546 this.$keyCode_$ = this.$lastKey_$ = -1;
2547 this.$altKey_$ = $e$$37$$.altKey
2548};
2549$JSCompiler_prototypeAlias$$.handleEvent = function $$JSCompiler_prototypeAlias$$$handleEvent$($e$$38_repeat$$) {
2550 var $be$$2_event$$3$$ = $e$$38_repeat$$.$event_$, $keyCode$$3$$, $charCode$$, $altKey$$2$$ = $be$$2_event$$3$$.altKey;
2551 $goog$userAgent$IE$$ && "keypress" == $e$$38_repeat$$.type ? ($keyCode$$3$$ = this.$keyCode_$, $charCode$$ = 13 != $keyCode$$3$$ && 27 != $keyCode$$3$$ ? $be$$2_event$$3$$.keyCode : 0) : $goog$userAgent$WEBKIT$$ && "keypress" == $e$$38_repeat$$.type ? ($keyCode$$3$$ = this.$keyCode_$, $charCode$$ = 0 <= $be$$2_event$$3$$.charCode && 63232 > $be$$2_event$$3$$.charCode && $goog$events$KeyCodes$isCharacterKey$$($keyCode$$3$$) ? $be$$2_event$$3$$.charCode : 0) : $goog$userAgent$OPERA$$ ? ($keyCode$$3$$ =
2552 this.$keyCode_$, $charCode$$ = $goog$events$KeyCodes$isCharacterKey$$($keyCode$$3$$) ? $be$$2_event$$3$$.keyCode : 0) : ($keyCode$$3$$ = $be$$2_event$$3$$.keyCode || this.$keyCode_$, $charCode$$ = $be$$2_event$$3$$.charCode || 0, $goog$events$KeyHandler$SAVE_ALT_FOR_KEYPRESS_$$ && ($altKey$$2$$ = this.$altKey_$), $goog$userAgent$detectedMac_$$ && (63 == $charCode$$ && 224 == $keyCode$$3$$) && ($keyCode$$3$$ = 191));
2553 var $key$$65$$ = $keyCode$$3$$, $keyIdentifier$$ = $be$$2_event$$3$$.keyIdentifier;
2554 $keyCode$$3$$ ? 63232 <= $keyCode$$3$$ && $keyCode$$3$$ in $goog$events$KeyHandler$safariKey_$$ ? $key$$65$$ = $goog$events$KeyHandler$safariKey_$$[$keyCode$$3$$] : 25 == $keyCode$$3$$ && $e$$38_repeat$$.shiftKey && ($key$$65$$ = 9) : $keyIdentifier$$ && $keyIdentifier$$ in $goog$events$KeyHandler$keyIdentifier_$$ && ($key$$65$$ = $goog$events$KeyHandler$keyIdentifier_$$[$keyIdentifier$$]);
2555 $e$$38_repeat$$ = $key$$65$$ == this.$lastKey_$;
2556 this.$lastKey_$ = $key$$65$$;
2557 $be$$2_event$$3$$ = new $goog$events$KeyEvent$$($key$$65$$, $charCode$$, $e$$38_repeat$$, $be$$2_event$$3$$);
2558 $be$$2_event$$3$$.altKey = $altKey$$2$$;
2559 this.dispatchEvent($be$$2_event$$3$$)
2560};
2561$JSCompiler_prototypeAlias$$.$getElement$ = $JSCompiler_get$$("$element_$");
2562function $JSCompiler_StaticMethods_attach$$($JSCompiler_StaticMethods_attach$self$$, $element$$71$$, $opt_capture$$7$$) {
2563 $JSCompiler_StaticMethods_attach$self$$.$keyUpKey_$ && $JSCompiler_StaticMethods_attach$self$$.detach();
2564 $JSCompiler_StaticMethods_attach$self$$.$element_$ = $element$$71$$;
2565 $JSCompiler_StaticMethods_attach$self$$.$keyPressKey_$ = $goog$events$listen$$($JSCompiler_StaticMethods_attach$self$$.$element_$, "keypress", $JSCompiler_StaticMethods_attach$self$$, $opt_capture$$7$$);
2566 $JSCompiler_StaticMethods_attach$self$$.$keyDownKey_$ = $goog$events$listen$$($JSCompiler_StaticMethods_attach$self$$.$element_$, "keydown", $JSCompiler_StaticMethods_attach$self$$.$handleKeyDown_$, $opt_capture$$7$$, $JSCompiler_StaticMethods_attach$self$$);
2567 $JSCompiler_StaticMethods_attach$self$$.$keyUpKey_$ = $goog$events$listen$$($JSCompiler_StaticMethods_attach$self$$.$element_$, "keyup", $JSCompiler_StaticMethods_attach$self$$.$handleKeyup_$, $opt_capture$$7$$, $JSCompiler_StaticMethods_attach$self$$)
2568}
2569$JSCompiler_prototypeAlias$$.detach = function $$JSCompiler_prototypeAlias$$$detach$() {
2570 this.$keyPressKey_$ && ($goog$events$unlistenByKey$$(this.$keyPressKey_$), $goog$events$unlistenByKey$$(this.$keyDownKey_$), $goog$events$unlistenByKey$$(this.$keyUpKey_$), this.$keyUpKey_$ = this.$keyDownKey_$ = this.$keyPressKey_$ = $JSCompiler_alias_NULL$$);
2571 this.$element_$ = $JSCompiler_alias_NULL$$;
2572 this.$keyCode_$ = this.$lastKey_$ = -1
2573};
2574function $goog$events$KeyEvent$$($keyCode$$4$$, $charCode$$1$$, $repeat$$1$$, $browserEvent$$1$$) {
2575 $browserEvent$$1$$ && this.init($browserEvent$$1$$, $JSCompiler_alias_VOID$$);
2576 this.type = "key";
2577 this.keyCode = $keyCode$$4$$;
2578 this.charCode = $charCode$$1$$;
2579 this.repeat = $repeat$$1$$
2580}
2581$goog$inherits$$($goog$events$KeyEvent$$, $goog$events$BrowserEvent$$);
2582function $goog$ui$IdGenerator$$() {
2583}
2584$goog$addSingletonGetter$$($goog$ui$IdGenerator$$);
2585$goog$ui$IdGenerator$$.prototype.$nextId_$ = 0;
2586$goog$ui$IdGenerator$$.$getInstance$();
2587function $goog$ui$Component$$($opt_domHelper$$2$$) {
2588 $goog$Disposable$$.call(this);
2589 this.$dom_$ = $opt_domHelper$$2$$ || $goog$dom$getDomHelper$$();
2590 this.$rightToLeft_$ = $goog$ui$Component$defaultRightToLeft_$$
2591}
2592$goog$inherits$$($goog$ui$Component$$, $goog$events$EventTarget$$);
2593$goog$ui$Component$$.prototype.$idGenerator_$ = $goog$ui$IdGenerator$$.$getInstance$();
2594var $goog$ui$Component$defaultRightToLeft_$$ = $JSCompiler_alias_NULL$$;
2595function $goog$ui$Component$getStateTransitionEvent$$($state$$, $isEntering$$) {
2596 switch($state$$) {
2597 case 1:
2598 return $isEntering$$ ? "disable" : "enable";
2599 case 2:
2600 return $isEntering$$ ? "highlight" : "unhighlight";
2601 case 4:
2602 return $isEntering$$ ? "activate" : "deactivate";
2603 case 8:
2604 return $isEntering$$ ? "select" : "unselect";
2605 case 16:
2606 return $isEntering$$ ? "check" : "uncheck";
2607 case 32:
2608 return $isEntering$$ ? "focus" : "blur";
2609 case 64:
2610 return $isEntering$$ ? "open" : "close"
2611 }
2612 $JSCompiler_alias_THROW$$(Error("Invalid component state"))
2613}
2614$JSCompiler_prototypeAlias$$ = $goog$ui$Component$$.prototype;
2615$JSCompiler_prototypeAlias$$.$id_$ = $JSCompiler_alias_NULL$$;
2616$JSCompiler_prototypeAlias$$.$inDocument_$ = $JSCompiler_alias_FALSE$$;
2617$JSCompiler_prototypeAlias$$.$element_$ = $JSCompiler_alias_NULL$$;
2618$JSCompiler_prototypeAlias$$.$rightToLeft_$ = $JSCompiler_alias_NULL$$;
2619$JSCompiler_prototypeAlias$$.$parent_$ = $JSCompiler_alias_NULL$$;
2620$JSCompiler_prototypeAlias$$.$children_$ = $JSCompiler_alias_NULL$$;
2621$JSCompiler_prototypeAlias$$.$childIndex_$ = $JSCompiler_alias_NULL$$;
2622$JSCompiler_prototypeAlias$$.$wasDecorated_$ = $JSCompiler_alias_FALSE$$;
2623$JSCompiler_prototypeAlias$$.$getElement$ = $JSCompiler_get$$("$element_$");
2624$JSCompiler_prototypeAlias$$.$getHandler$ = function $$JSCompiler_prototypeAlias$$$$getHandler$$() {
2625 return this.$googUiComponentHandler_$ || (this.$googUiComponentHandler_$ = new $goog$events$EventHandler$$(this))
2626};
2627$JSCompiler_prototypeAlias$$.$setParentEventTarget$ = function $$JSCompiler_prototypeAlias$$$$setParentEventTarget$$($parent$$22$$) {
2628 this.$parent_$ && this.$parent_$ != $parent$$22$$ && $JSCompiler_alias_THROW$$(Error("Method not supported"));
2629 $goog$ui$Component$$.$superClass_$.$setParentEventTarget$.call(this, $parent$$22$$)
2630};
2631$JSCompiler_prototypeAlias$$.$getDomHelper$ = $JSCompiler_get$$("$dom_$");
2632$JSCompiler_prototypeAlias$$.$decorate$ = function $$JSCompiler_prototypeAlias$$$$decorate$$($element$$73$$) {
2633 this.$inDocument_$ && $JSCompiler_alias_THROW$$(Error("Component already rendered"));
2634 if($element$$73$$ && this.$canDecorate$($element$$73$$)) {
2635 this.$wasDecorated_$ = $JSCompiler_alias_TRUE$$;
2636 if(!this.$dom_$ || this.$dom_$.$document_$ != $goog$dom$getOwnerDocument$$($element$$73$$)) {
2637 this.$dom_$ = $goog$dom$getDomHelper$$($element$$73$$)
2638 }
2639 this.$decorateInternal$($element$$73$$);
2640 this.$enterDocument$()
2641 }else {
2642 $JSCompiler_alias_THROW$$(Error("Invalid element to decorate"))
2643 }
2644};
2645$JSCompiler_prototypeAlias$$.$canDecorate$ = $JSCompiler_returnArg$$($JSCompiler_alias_TRUE$$);
2646$JSCompiler_prototypeAlias$$.$decorateInternal$ = function $$JSCompiler_prototypeAlias$$$$decorateInternal$$($element$$75$$) {
2647 this.$element_$ = $element$$75$$
2648};
2649$JSCompiler_prototypeAlias$$.$enterDocument$ = function $$JSCompiler_prototypeAlias$$$$enterDocument$$() {
2650 function $f$$inline_522$$($child$$8$$) {
2651 !$child$$8$$.$inDocument_$ && $child$$8$$.$getElement$() && $child$$8$$.$enterDocument$()
2652 }
2653 this.$inDocument_$ = $JSCompiler_alias_TRUE$$;
2654 this.$children_$ && $goog$array$forEach$$(this.$children_$, $f$$inline_522$$, $JSCompiler_alias_VOID$$)
2655};
2656$JSCompiler_prototypeAlias$$.$exitDocument$ = function $$JSCompiler_prototypeAlias$$$$exitDocument$$() {
2657 function $f$$inline_526$$($child$$9$$) {
2658 $child$$9$$.$inDocument_$ && $child$$9$$.$exitDocument$()
2659 }
2660 this.$children_$ && $goog$array$forEach$$(this.$children_$, $f$$inline_526$$, $JSCompiler_alias_VOID$$);
2661 this.$googUiComponentHandler_$ && this.$googUiComponentHandler_$.$removeAll$();
2662 this.$inDocument_$ = $JSCompiler_alias_FALSE$$
2663};
2664$JSCompiler_prototypeAlias$$.$getContentElement$ = $JSCompiler_get$$("$element_$");
2665$JSCompiler_prototypeAlias$$.$setRightToLeft$ = function $$JSCompiler_prototypeAlias$$$$setRightToLeft$$($rightToLeft$$1$$) {
2666 this.$inDocument_$ && $JSCompiler_alias_THROW$$(Error("Component already rendered"));
2667 this.$rightToLeft_$ = $rightToLeft$$1$$
2668};
2669$JSCompiler_prototypeAlias$$.removeChild = function $$JSCompiler_prototypeAlias$$$removeChild$($child$$15$$, $opt_unrender$$) {
2670 if($child$$15$$) {
2671 var $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ = $goog$isString$$($child$$15$$) ? $child$$15$$ : $child$$15$$.$id_$ || ($child$$15$$.$id_$ = ":" + ($child$$15$$.$idGenerator_$.$nextId_$++).toString(36)), $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$;
2672 this.$childIndex_$ && $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ ? ($JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ = this.$childIndex_$, $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ = ($JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ in $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ ? $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$[$JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$] : $JSCompiler_alias_VOID$$) ||
2673 $JSCompiler_alias_NULL$$) : $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ = $JSCompiler_alias_NULL$$;
2674 $child$$15$$ = $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$;
2675 $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ && $child$$15$$ && ($JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ = this.$childIndex_$, $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ in $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$ && delete $JSCompiler_temp$$inline_861_obj$$inline_862_obj$$inline_865$$[$JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$], $goog$array$remove$$(this.$children_$, $child$$15$$), $opt_unrender$$ &&
2676 ($child$$15$$.$exitDocument$(), $child$$15$$.$element_$ && $goog$dom$removeNode$$($child$$15$$.$element_$)), $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ = $child$$15$$, $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$ == $JSCompiler_alias_NULL$$ && $JSCompiler_alias_THROW$$(Error("Unable to set parent component")), $JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$.$parent_$ = $JSCompiler_alias_NULL$$, $goog$ui$Component$$.$superClass_$.$setParentEventTarget$.call($JSCompiler_StaticMethods_setParent$self$$inline_533_id$$6$$,
2677 $JSCompiler_alias_NULL$$))
2678 }
2679 $child$$15$$ || $JSCompiler_alias_THROW$$(Error("Child is not in parent component"));
2680 return $child$$15$$
2681};
2682function $goog$ui$ControlRenderer$$() {
2683}
2684var $goog$ui$ControlRenderer$ARIA_STATE_MAP_$$;
2685$goog$addSingletonGetter$$($goog$ui$ControlRenderer$$);
2686$JSCompiler_prototypeAlias$$ = $goog$ui$ControlRenderer$$.prototype;
2687$JSCompiler_prototypeAlias$$.$getContentElement$ = function $$JSCompiler_prototypeAlias$$$$getContentElement$$($element$$83$$) {
2688 return $element$$83$$
2689};
2690$JSCompiler_prototypeAlias$$.$enableClassName$ = function $$JSCompiler_prototypeAlias$$$$enableClassName$$($control$$1_element$$84$$, $className$$16$$, $enable$$1$$) {
2691 if($control$$1_element$$84$$ = $control$$1_element$$84$$.$getElement$ ? $control$$1_element$$84$$.$getElement$() : $control$$1_element$$84$$) {
2692 if($goog$userAgent$IE$$ && !$goog$userAgent$isVersion$$("7")) {
2693 var $combinedClasses$$ = $JSCompiler_StaticMethods_getAppliedCombinedClassNames_$$($goog$dom$classes$get$$($control$$1_element$$84$$), $className$$16$$);
2694 $combinedClasses$$.push($className$$16$$);
2695 $goog$partial$$($enable$$1$$ ? $goog$dom$classes$add$$ : $goog$dom$classes$remove$$, $control$$1_element$$84$$).apply($JSCompiler_alias_NULL$$, $combinedClasses$$)
2696 }else {
2697 $enable$$1$$ ? $goog$dom$classes$add$$($control$$1_element$$84$$, $className$$16$$) : $goog$dom$classes$remove$$($control$$1_element$$84$$, $className$$16$$)
2698 }
2699 }
2700};
2701$JSCompiler_prototypeAlias$$.$canDecorate$ = $JSCompiler_returnArg$$($JSCompiler_alias_TRUE$$);
2702$JSCompiler_prototypeAlias$$.$decorate$ = function $$JSCompiler_prototypeAlias$$$$decorate$$($control$$3$$, $element$$86$$) {
2703 if($element$$86$$.id) {
2704 var $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ = $element$$86$$.id;
2705 if($control$$3$$.$parent_$ && $control$$3$$.$parent_$.$childIndex_$) {
2706 var $classNames$$1_obj$$inline_868_obj$$inline_871$$ = $control$$3$$.$parent_$.$childIndex_$, $extraClassNames_key$$inline_869$$ = $control$$3$$.$id_$;
2707 $extraClassNames_key$$inline_869$$ in $classNames$$1_obj$$inline_868_obj$$inline_871$$ && delete $classNames$$1_obj$$inline_868_obj$$inline_871$$[$extraClassNames_key$$inline_869$$];
2708 $classNames$$1_obj$$inline_868_obj$$inline_871$$ = $control$$3$$.$parent_$.$childIndex_$;
2709 $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ in $classNames$$1_obj$$inline_868_obj$$inline_871$$ && $JSCompiler_alias_THROW$$(Error('The object already contains the key "' + $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ + '"'));
2710 $classNames$$1_obj$$inline_868_obj$$inline_871$$[$content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$] = $control$$3$$
2711 }
2712 $control$$3$$.$id_$ = $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$
2713 }
2714 ($content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ = this.$getContentElement$($element$$86$$)) && $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$.firstChild ? ($content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ = $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$.firstChild.nextSibling ? $goog$array$toArray$$($content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$.childNodes) : $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$.firstChild,
2715 $control$$3$$.$content_$ = $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$) : $control$$3$$.$content_$ = $JSCompiler_alias_NULL$$;
2716 var $state$$2$$ = 0, $rendererClassName$$ = this.$getCssClass$(), $structuralClassName$$ = this.$getCssClass$(), $hasRendererClassName$$ = $JSCompiler_alias_FALSE$$, $hasStructuralClassName$$ = $JSCompiler_alias_FALSE$$, $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ = $JSCompiler_alias_FALSE$$, $classNames$$1_obj$$inline_868_obj$$inline_871$$ = $goog$dom$classes$get$$($element$$86$$);
2717 $goog$array$forEach$$($classNames$$1_obj$$inline_868_obj$$inline_871$$, function($className$$18_state$$inline_551$$) {
2718 if(!$hasRendererClassName$$ && $className$$18_state$$inline_551$$ == $rendererClassName$$) {
2719 $hasRendererClassName$$ = $JSCompiler_alias_TRUE$$, $structuralClassName$$ == $rendererClassName$$ && ($hasStructuralClassName$$ = $JSCompiler_alias_TRUE$$)
2720 }else {
2721 if(!$hasStructuralClassName$$ && $className$$18_state$$inline_551$$ == $structuralClassName$$) {
2722 $hasStructuralClassName$$ = $JSCompiler_alias_TRUE$$
2723 }else {
2724 var $JSCompiler_temp_const$$31$$ = $state$$2$$;
2725 if(!this.$stateByClass_$) {
2726 this.$classByState_$ || $JSCompiler_StaticMethods_createClassByStateMap_$$(this);
2727 var $obj$$inline_908$$ = this.$classByState_$, $transposed$$inline_909$$ = {}, $key$$inline_910$$;
2728 for($key$$inline_910$$ in $obj$$inline_908$$) {
2729 $transposed$$inline_909$$[$obj$$inline_908$$[$key$$inline_910$$]] = $key$$inline_910$$
2730 }
2731 this.$stateByClass_$ = $transposed$$inline_909$$
2732 }
2733 $className$$18_state$$inline_551$$ = parseInt(this.$stateByClass_$[$className$$18_state$$inline_551$$], 10);
2734 $state$$2$$ = $JSCompiler_temp_const$$31$$ | (isNaN($className$$18_state$$inline_551$$) ? 0 : $className$$18_state$$inline_551$$)
2735 }
2736 }
2737 }, this);
2738 $control$$3$$.$state_$ = $state$$2$$;
2739 $hasRendererClassName$$ || ($classNames$$1_obj$$inline_868_obj$$inline_871$$.push($rendererClassName$$), $structuralClassName$$ == $rendererClassName$$ && ($hasStructuralClassName$$ = $JSCompiler_alias_TRUE$$));
2740 $hasStructuralClassName$$ || $classNames$$1_obj$$inline_868_obj$$inline_871$$.push($structuralClassName$$);
2741 ($extraClassNames_key$$inline_869$$ = $control$$3$$.$extraClassNames_$) && $classNames$$1_obj$$inline_868_obj$$inline_871$$.push.apply($classNames$$1_obj$$inline_868_obj$$inline_871$$, $extraClassNames_key$$inline_869$$);
2742 if($goog$userAgent$IE$$ && !$goog$userAgent$isVersion$$("7")) {
2743 var $combinedClasses$$1$$ = $JSCompiler_StaticMethods_getAppliedCombinedClassNames_$$($classNames$$1_obj$$inline_868_obj$$inline_871$$);
2744 0 < $combinedClasses$$1$$.length && ($classNames$$1_obj$$inline_868_obj$$inline_871$$.push.apply($classNames$$1_obj$$inline_868_obj$$inline_871$$, $combinedClasses$$1$$), $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$ = $JSCompiler_alias_TRUE$$)
2745 }
2746 if(!$hasRendererClassName$$ || !$hasStructuralClassName$$ || $extraClassNames_key$$inline_869$$ || $content$$inline_544_contentElem_hasCombinedClassName_id$$inline_541$$) {
2747 $element$$86$$.className = $classNames$$1_obj$$inline_868_obj$$inline_871$$.join(" ")
2748 }
2749 $control$$3$$.isEnabled() || this.$updateAriaState$($element$$86$$, 1, $JSCompiler_alias_TRUE$$);
2750 $control$$3$$.$state_$ & 8 && this.$updateAriaState$($element$$86$$, 8, $JSCompiler_alias_TRUE$$);
2751 $control$$3$$.$supportedStates_$ & 16 && this.$updateAriaState$($element$$86$$, 16, !!($control$$3$$.$state_$ & 16));
2752 $control$$3$$.$supportedStates_$ & 64 && this.$updateAriaState$($element$$86$$, 64, !!($control$$3$$.$state_$ & 64));
2753 return $element$$86$$
2754};
2755$JSCompiler_prototypeAlias$$.$setAllowTextSelection$ = function $$JSCompiler_prototypeAlias$$$$setAllowTextSelection$$($element$$89$$, $allow$$) {
2756 var $unselectable$$inline_564_value$$inline_567$$ = !$allow$$, $descendants$$inline_566$$ = $goog$userAgent$IE$$ || $goog$userAgent$OPERA$$ ? $element$$89$$.getElementsByTagName("*") : $JSCompiler_alias_NULL$$;
2757 if($goog$style$unselectableStyle_$$) {
2758 if($unselectable$$inline_564_value$$inline_567$$ = $unselectable$$inline_564_value$$inline_567$$ ? "none" : "", $element$$89$$.style[$goog$style$unselectableStyle_$$] = $unselectable$$inline_564_value$$inline_567$$, $descendants$$inline_566$$) {
2759 for(var $i$$inline_568$$ = 0, $descendant$$inline_569$$;$descendant$$inline_569$$ = $descendants$$inline_566$$[$i$$inline_568$$];$i$$inline_568$$++) {
2760 $descendant$$inline_569$$.style[$goog$style$unselectableStyle_$$] = $unselectable$$inline_564_value$$inline_567$$
2761 }
2762 }
2763 }else {
2764 if($goog$userAgent$IE$$ || $goog$userAgent$OPERA$$) {
2765 if($unselectable$$inline_564_value$$inline_567$$ = $unselectable$$inline_564_value$$inline_567$$ ? "on" : "", $element$$89$$.setAttribute("unselectable", $unselectable$$inline_564_value$$inline_567$$), $descendants$$inline_566$$) {
2766 for($i$$inline_568$$ = 0;$descendant$$inline_569$$ = $descendants$$inline_566$$[$i$$inline_568$$];$i$$inline_568$$++) {
2767 $descendant$$inline_569$$.setAttribute("unselectable", $unselectable$$inline_564_value$$inline_567$$)
2768 }
2769 }
2770 }
2771 }
2772};
2773$JSCompiler_prototypeAlias$$.$setRightToLeft$ = function $$JSCompiler_prototypeAlias$$$$setRightToLeft$$($element$$90$$, $rightToLeft$$2$$) {
2774 this.$enableClassName$($element$$90$$, this.$getCssClass$() + "-rtl", $rightToLeft$$2$$)
2775};
2776$JSCompiler_prototypeAlias$$.$isFocusable$ = function $$JSCompiler_prototypeAlias$$$$isFocusable$$($control$$6$$) {
2777 var $keyTarget$$;
2778 return $control$$6$$.$supportedStates_$ & 32 && ($keyTarget$$ = $control$$6$$.$getKeyEventTarget$()) ? $goog$dom$isFocusableTabIndex$$($keyTarget$$) : $JSCompiler_alias_FALSE$$
2779};
2780$JSCompiler_prototypeAlias$$.$setFocusable$ = function $$JSCompiler_prototypeAlias$$$$setFocusable$$($control$$7$$, $focusable$$) {
2781 var $element$$inline_571_keyTarget$$1$$;
2782 if($control$$7$$.$supportedStates_$ & 32 && ($element$$inline_571_keyTarget$$1$$ = $control$$7$$.$getKeyEventTarget$())) {
2783 if(!$focusable$$ && $control$$7$$.$state_$ & 32) {
2784 try {
2785 $element$$inline_571_keyTarget$$1$$.blur()
2786 }catch($e$$39$$) {
2787 }
2788 $control$$7$$.$state_$ & 32 && $control$$7$$.$handleBlur$()
2789 }
2790 $goog$dom$isFocusableTabIndex$$($element$$inline_571_keyTarget$$1$$) != $focusable$$ && ($focusable$$ ? $element$$inline_571_keyTarget$$1$$.tabIndex = 0 : ($element$$inline_571_keyTarget$$1$$.tabIndex = -1, $element$$inline_571_keyTarget$$1$$.removeAttribute("tabIndex")))
2791 }
2792};
2793$JSCompiler_prototypeAlias$$.$setState$ = function $$JSCompiler_prototypeAlias$$$$setState$$($control$$8$$, $state$$3$$, $enable$$3$$) {
2794 var $element$$92$$ = $control$$8$$.$getElement$();
2795 if($element$$92$$) {
2796 var $className$$19$$;
2797 this.$classByState_$ || $JSCompiler_StaticMethods_createClassByStateMap_$$(this);
2798 ($className$$19$$ = this.$classByState_$[$state$$3$$]) && this.$enableClassName$($control$$8$$, $className$$19$$, $enable$$3$$);
2799 this.$updateAriaState$($element$$92$$, $state$$3$$, $enable$$3$$)
2800 }
2801};
2802$JSCompiler_prototypeAlias$$.$updateAriaState$ = function $$JSCompiler_prototypeAlias$$$$updateAriaState$$($element$$93$$, $ariaState_state$$4$$, $enable$$4$$) {
2803 $goog$ui$ControlRenderer$ARIA_STATE_MAP_$$ || ($goog$ui$ControlRenderer$ARIA_STATE_MAP_$$ = {1:"disabled", 8:"selected", 16:"checked", 64:"expanded"});
2804 ($ariaState_state$$4$$ = $goog$ui$ControlRenderer$ARIA_STATE_MAP_$$[$ariaState_state$$4$$]) && $element$$93$$.setAttribute("aria-" + $ariaState_state$$4$$, $enable$$4$$)
2805};
2806$JSCompiler_prototypeAlias$$.$setContent$ = function $$JSCompiler_prototypeAlias$$$$setContent$$($element$$94$$, $content$$2$$) {
2807 var $contentElem$$1$$ = this.$getContentElement$($element$$94$$);
2808 if($contentElem$$1$$ && ($goog$dom$removeChildren$$($contentElem$$1$$), $content$$2$$)) {
2809 if($goog$isString$$($content$$2$$)) {
2810 if("textContent" in $contentElem$$1$$) {
2811 $contentElem$$1$$.textContent = $content$$2$$
2812 }else {
2813 if($contentElem$$1$$.firstChild && 3 == $contentElem$$1$$.firstChild.nodeType) {
2814 for(;$contentElem$$1$$.lastChild != $contentElem$$1$$.firstChild;) {
2815 $contentElem$$1$$.removeChild($contentElem$$1$$.lastChild)
2816 }
2817 $contentElem$$1$$.firstChild.data = $content$$2$$
2818 }else {
2819 $goog$dom$removeChildren$$($contentElem$$1$$), $contentElem$$1$$.appendChild($goog$dom$getOwnerDocument$$($contentElem$$1$$).createTextNode($content$$2$$))
2820 }
2821 }
2822 }else {
2823 var $childHandler$$1$$ = function $$childHandler$$1$$$($child$$16$$) {
2824 if($child$$16$$) {
2825 var $doc$$34$$ = $goog$dom$getOwnerDocument$$($contentElem$$1$$);
2826 $contentElem$$1$$.appendChild($goog$isString$$($child$$16$$) ? $doc$$34$$.createTextNode($child$$16$$) : $child$$16$$)
2827 }
2828 };
2829 $goog$isArray$$($content$$2$$) ? $goog$array$forEach$$($content$$2$$, $childHandler$$1$$) : $goog$isArrayLike$$($content$$2$$) && !("nodeType" in $content$$2$$) ? $goog$array$forEach$$($goog$array$toArray$$($content$$2$$), $childHandler$$1$$) : $childHandler$$1$$($content$$2$$)
2830 }
2831 }
2832};
2833$JSCompiler_prototypeAlias$$.$getKeyEventTarget$ = function $$JSCompiler_prototypeAlias$$$$getKeyEventTarget$$($control$$9$$) {
2834 return $control$$9$$.$getElement$()
2835};
2836$JSCompiler_prototypeAlias$$.$getCssClass$ = $JSCompiler_returnArg$$("goog-control");
2837function $JSCompiler_StaticMethods_getAppliedCombinedClassNames_$$($classes$$5$$, $opt_includedClass$$) {
2838 var $toAdd$$ = [];
2839 $opt_includedClass$$ && ($classes$$5$$ = $classes$$5$$.concat([$opt_includedClass$$]));
2840 $goog$array$forEach$$([], function($combo$$) {
2841 $goog$array$every$$($combo$$, $goog$partial$$($goog$array$contains$$, $classes$$5$$)) && (!$opt_includedClass$$ || $goog$array$contains$$($combo$$, $opt_includedClass$$)) && $toAdd$$.push($combo$$.join("_"))
2842 });
2843 return $toAdd$$
2844}
2845function $JSCompiler_StaticMethods_createClassByStateMap_$$($JSCompiler_StaticMethods_createClassByStateMap_$self$$) {
2846 var $baseClass$$ = $JSCompiler_StaticMethods_createClassByStateMap_$self$$.$getCssClass$();
2847 $JSCompiler_StaticMethods_createClassByStateMap_$self$$.$classByState_$ = {1:$baseClass$$ + "-disabled", 2:$baseClass$$ + "-hover", 4:$baseClass$$ + "-active", 8:$baseClass$$ + "-selected", 16:$baseClass$$ + "-checked", 32:$baseClass$$ + "-focused", 64:$baseClass$$ + "-open"}
2848}
2849;var $goog$ui$registry$defaultRenderers_$$ = {};
2850function $goog$ui$Control$$($content$$3$$, $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$, $opt_domHelper$$3$$) {
2851 $goog$ui$Component$$.call(this, $opt_domHelper$$3$$);
2852 if(!$JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$) {
2853 for(var $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$ = this.constructor, $key$$inline_585_rendererCtor$$inline_586$$;$JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$;) {
2854 $key$$inline_585_rendererCtor$$inline_586$$ = $goog$getUid$$($JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$);
2855 if($key$$inline_585_rendererCtor$$inline_586$$ = $goog$ui$registry$defaultRenderers_$$[$key$$inline_585_rendererCtor$$inline_586$$]) {
2856 break
2857 }
2858 $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$ = $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$.$superClass_$ ? $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$.$superClass_$.constructor : $JSCompiler_alias_NULL$$
2859 }
2860 $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$ = $key$$inline_585_rendererCtor$$inline_586$$ ? $goog$isFunction$$($key$$inline_585_rendererCtor$$inline_586$$.$getInstance$) ? $key$$inline_585_rendererCtor$$inline_586$$.$getInstance$() : new $key$$inline_585_rendererCtor$$inline_586$$ : $JSCompiler_alias_NULL$$
2861 }
2862 this.$renderer_$ = $JSCompiler_temp$$25_componentCtor$$inline_584_opt_renderer$$;
2863 this.$content_$ = $content$$3$$
2864}
2865$goog$inherits$$($goog$ui$Control$$, $goog$ui$Component$$);
2866$JSCompiler_prototypeAlias$$ = $goog$ui$Control$$.prototype;
2867$JSCompiler_prototypeAlias$$.$content_$ = $JSCompiler_alias_NULL$$;
2868$JSCompiler_prototypeAlias$$.$state_$ = 0;
2869$JSCompiler_prototypeAlias$$.$supportedStates_$ = 39;
2870$JSCompiler_prototypeAlias$$.$autoStates_$ = 255;
2871$JSCompiler_prototypeAlias$$.$statesWithTransitionEvents_$ = 0;
2872$JSCompiler_prototypeAlias$$.$visible_$ = $JSCompiler_alias_TRUE$$;
2873$JSCompiler_prototypeAlias$$.$extraClassNames_$ = $JSCompiler_alias_NULL$$;
2874$JSCompiler_prototypeAlias$$.$handleMouseEvents_$ = $JSCompiler_alias_TRUE$$;
2875$JSCompiler_prototypeAlias$$.$allowTextSelection_$ = $JSCompiler_alias_FALSE$$;
2876$JSCompiler_prototypeAlias$$.$preferredAriaRole_$ = $JSCompiler_alias_NULL$$;
2877function $JSCompiler_StaticMethods_setHandleMouseEvents$$($JSCompiler_StaticMethods_setHandleMouseEvents$self$$) {
2878 $JSCompiler_StaticMethods_setHandleMouseEvents$self$$.$inDocument_$ && $JSCompiler_alias_FALSE$$ != $JSCompiler_StaticMethods_setHandleMouseEvents$self$$.$handleMouseEvents_$ && $JSCompiler_StaticMethods_enableMouseEventHandling_$$($JSCompiler_StaticMethods_setHandleMouseEvents$self$$, $JSCompiler_alias_FALSE$$);
2879 $JSCompiler_StaticMethods_setHandleMouseEvents$self$$.$handleMouseEvents_$ = $JSCompiler_alias_FALSE$$
2880}
2881$JSCompiler_prototypeAlias$$.$getKeyEventTarget$ = function $$JSCompiler_prototypeAlias$$$$getKeyEventTarget$$() {
2882 return this.$renderer_$.$getKeyEventTarget$(this)
2883};
2884$JSCompiler_prototypeAlias$$.$enableClassName$ = function $$JSCompiler_prototypeAlias$$$$enableClassName$$($className$$25$$, $enable$$6$$) {
2885 $enable$$6$$ ? $className$$25$$ && (this.$extraClassNames_$ ? $goog$array$contains$$(this.$extraClassNames_$, $className$$25$$) || this.$extraClassNames_$.push($className$$25$$) : this.$extraClassNames_$ = [$className$$25$$], this.$renderer_$.$enableClassName$(this, $className$$25$$, $JSCompiler_alias_TRUE$$)) : $className$$25$$ && this.$extraClassNames_$ && ($goog$array$remove$$(this.$extraClassNames_$, $className$$25$$), 0 == this.$extraClassNames_$.length && (this.$extraClassNames_$ = $JSCompiler_alias_NULL$$),
2886 this.$renderer_$.$enableClassName$(this, $className$$25$$, $JSCompiler_alias_FALSE$$))
2887};
2888$JSCompiler_prototypeAlias$$.$getContentElement$ = function $$JSCompiler_prototypeAlias$$$$getContentElement$$() {
2889 return this.$renderer_$.$getContentElement$(this.$getElement$())
2890};
2891$JSCompiler_prototypeAlias$$.$canDecorate$ = function $$JSCompiler_prototypeAlias$$$$canDecorate$$($element$$98$$) {
2892 return this.$renderer_$.$canDecorate$($element$$98$$)
2893};
2894$JSCompiler_prototypeAlias$$.$decorateInternal$ = function $$JSCompiler_prototypeAlias$$$$decorateInternal$$($element$$99$$) {
2895 this.$element_$ = $element$$99$$ = this.$renderer_$.$decorate$(this, $element$$99$$);
2896 var $ariaRole$$inline_612$$ = this.$preferredAriaRole_$ || $JSCompiler_alias_VOID$$;
2897 $ariaRole$$inline_612$$ && $element$$99$$.setAttribute("role", $ariaRole$$inline_612$$);
2898 this.$allowTextSelection_$ || this.$renderer_$.$setAllowTextSelection$($element$$99$$, $JSCompiler_alias_FALSE$$);
2899 this.$visible_$ = "none" != $element$$99$$.style.display
2900};
2901$JSCompiler_prototypeAlias$$.$enterDocument$ = function $$JSCompiler_prototypeAlias$$$$enterDocument$$() {
2902 $goog$ui$Control$$.$superClass_$.$enterDocument$.call(this);
2903 var $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$ = this.$renderer_$;
2904 this.$rightToLeft_$ == $JSCompiler_alias_NULL$$ && (this.$rightToLeft_$ = $goog$style$isRightToLeft$$(this.$inDocument_$ ? this.$element_$ : this.$dom_$.$document_$.body));
2905 this.$rightToLeft_$ && $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$.$setRightToLeft$(this.$getElement$(), $JSCompiler_alias_TRUE$$);
2906 this.isEnabled() && $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$.$setFocusable$(this, this.$visible_$);
2907 if(this.$supportedStates_$ & -2 && (this.$handleMouseEvents_$ && $JSCompiler_StaticMethods_enableMouseEventHandling_$$(this, $JSCompiler_alias_TRUE$$), this.$supportedStates_$ & 32 && ($JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$ = this.$getKeyEventTarget$()))) {
2908 var $keyHandler$$ = this.$keyHandler_$ || (this.$keyHandler_$ = new $goog$events$KeyHandler$$);
2909 $JSCompiler_StaticMethods_attach$$($keyHandler$$, $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$);
2910 $JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$(this.$getHandler$(), $keyHandler$$, "key", this.$handleKeyEvent$), $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$, "focus", this.$handleFocus$), $JSCompiler_StaticMethods_initializeDom$self$$inline_614_keyTarget$$2$$, "blur", this.$handleBlur$)
2911 }
2912};
2913function $JSCompiler_StaticMethods_enableMouseEventHandling_$$($JSCompiler_StaticMethods_enableMouseEventHandling_$self$$, $enable$$7$$) {
2914 var $handler$$11$$ = $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$getHandler$(), $element$$100$$ = $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$getElement$();
2915 $enable$$7$$ ? ($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($handler$$11$$, $element$$100$$, "mouseover", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseOver$), $element$$100$$, "mousedown", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseDown$), $element$$100$$, "mouseup", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseUp$), $element$$100$$,
2916 "mouseout", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseOut$), $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleContextMenu$ != $goog$nullFunction$$ && $JSCompiler_StaticMethods_listen$$($handler$$11$$, $element$$100$$, "contextmenu", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleContextMenu$), $goog$userAgent$IE$$ && $JSCompiler_StaticMethods_listen$$($handler$$11$$, $element$$100$$, "dblclick", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleDblClick$)) :
2917 ($JSCompiler_StaticMethods_unlisten$$($JSCompiler_StaticMethods_unlisten$$($JSCompiler_StaticMethods_unlisten$$($JSCompiler_StaticMethods_unlisten$$($handler$$11$$, $element$$100$$, "mouseover", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseOver$), $element$$100$$, "mousedown", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseDown$), $element$$100$$, "mouseup", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseUp$), $element$$100$$,
2918 "mouseout", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleMouseOut$), $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleContextMenu$ != $goog$nullFunction$$ && $JSCompiler_StaticMethods_unlisten$$($handler$$11$$, $element$$100$$, "contextmenu", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleContextMenu$), $goog$userAgent$IE$$ && $JSCompiler_StaticMethods_unlisten$$($handler$$11$$, $element$$100$$, "dblclick", $JSCompiler_StaticMethods_enableMouseEventHandling_$self$$.$handleDblClick$))
2919}
2920$JSCompiler_prototypeAlias$$.$exitDocument$ = function $$JSCompiler_prototypeAlias$$$$exitDocument$$() {
2921 $goog$ui$Control$$.$superClass_$.$exitDocument$.call(this);
2922 this.$keyHandler_$ && this.$keyHandler_$.detach();
2923 this.$visible_$ && this.isEnabled() && this.$renderer_$.$setFocusable$(this, $JSCompiler_alias_FALSE$$)
2924};
2925$JSCompiler_prototypeAlias$$.$setContent$ = function $$JSCompiler_prototypeAlias$$$$setContent$$($content$$4$$) {
2926 this.$renderer_$.$setContent$(this.$getElement$(), $content$$4$$);
2927 this.$content_$ = $content$$4$$
2928};
2929$JSCompiler_prototypeAlias$$.$setRightToLeft$ = function $$JSCompiler_prototypeAlias$$$$setRightToLeft$$($rightToLeft$$3$$) {
2930 $goog$ui$Control$$.$superClass_$.$setRightToLeft$.call(this, $rightToLeft$$3$$);
2931 var $element$$101$$ = this.$getElement$();
2932 $element$$101$$ && this.$renderer_$.$setRightToLeft$($element$$101$$, $rightToLeft$$3$$)
2933};
2934$JSCompiler_prototypeAlias$$.$setAllowTextSelection$ = function $$JSCompiler_prototypeAlias$$$$setAllowTextSelection$$($allow$$1$$) {
2935 this.$allowTextSelection_$ = $allow$$1$$;
2936 var $element$$102$$ = this.$getElement$();
2937 $element$$102$$ && this.$renderer_$.$setAllowTextSelection$($element$$102$$, $allow$$1$$)
2938};
2939$JSCompiler_prototypeAlias$$.isEnabled = function $$JSCompiler_prototypeAlias$$$isEnabled$() {
2940 return!(this.$state_$ & 1)
2941};
2942function $JSCompiler_StaticMethods_setHighlighted$$($JSCompiler_StaticMethods_setHighlighted$self$$, $highlight$$) {
2943 $JSCompiler_StaticMethods_isTransitionAllowed$$($JSCompiler_StaticMethods_setHighlighted$self$$, 2, $highlight$$) && $JSCompiler_StaticMethods_setHighlighted$self$$.$setState$(2, $highlight$$)
2944}
2945$JSCompiler_prototypeAlias$$.setActive = function $$JSCompiler_prototypeAlias$$$setActive$($active$$) {
2946 $JSCompiler_StaticMethods_isTransitionAllowed$$(this, 4, $active$$) && this.$setState$(4, $active$$)
2947};
2948$JSCompiler_prototypeAlias$$.$setState$ = function $$JSCompiler_prototypeAlias$$$$setState$$($state$$9$$, $enable$$9$$) {
2949 this.$supportedStates_$ & $state$$9$$ && $enable$$9$$ != !!(this.$state_$ & $state$$9$$) && (this.$renderer_$.$setState$(this, $state$$9$$, $enable$$9$$), this.$state_$ = $enable$$9$$ ? this.$state_$ | $state$$9$$ : this.$state_$ & ~$state$$9$$)
2950};
2951function $JSCompiler_StaticMethods_isAutoState$$($JSCompiler_StaticMethods_isAutoState$self$$, $state$$13$$) {
2952 return!!($JSCompiler_StaticMethods_isAutoState$self$$.$autoStates_$ & $state$$13$$) && !!($JSCompiler_StaticMethods_isAutoState$self$$.$supportedStates_$ & $state$$13$$)
2953}
2954function $JSCompiler_StaticMethods_isTransitionAllowed$$($JSCompiler_StaticMethods_isTransitionAllowed$self$$, $state$$15$$, $enable$$12$$) {
2955 return!!($JSCompiler_StaticMethods_isTransitionAllowed$self$$.$supportedStates_$ & $state$$15$$) && !!($JSCompiler_StaticMethods_isTransitionAllowed$self$$.$state_$ & $state$$15$$) != $enable$$12$$ && (!($JSCompiler_StaticMethods_isTransitionAllowed$self$$.$statesWithTransitionEvents_$ & $state$$15$$) || $JSCompiler_StaticMethods_isTransitionAllowed$self$$.dispatchEvent($goog$ui$Component$getStateTransitionEvent$$($state$$15$$, $enable$$12$$))) && !$JSCompiler_StaticMethods_isTransitionAllowed$self$$.$disposed_$
2956}
2957$JSCompiler_prototypeAlias$$.$handleMouseOver$ = function $$JSCompiler_prototypeAlias$$$$handleMouseOver$$($e$$40$$) {
2958 (!$e$$40$$.relatedTarget || !$goog$dom$contains$$(this.$getElement$(), $e$$40$$.relatedTarget)) && (this.dispatchEvent("enter") && this.isEnabled() && $JSCompiler_StaticMethods_isAutoState$$(this, 2)) && $JSCompiler_StaticMethods_setHighlighted$$(this, $JSCompiler_alias_TRUE$$)
2959};
2960$JSCompiler_prototypeAlias$$.$handleMouseOut$ = function $$JSCompiler_prototypeAlias$$$$handleMouseOut$$($e$$41$$) {
2961 if((!$e$$41$$.relatedTarget || !$goog$dom$contains$$(this.$getElement$(), $e$$41$$.relatedTarget)) && this.dispatchEvent("leave")) {
2962 $JSCompiler_StaticMethods_isAutoState$$(this, 4) && this.setActive($JSCompiler_alias_FALSE$$), $JSCompiler_StaticMethods_isAutoState$$(this, 2) && $JSCompiler_StaticMethods_setHighlighted$$(this, $JSCompiler_alias_FALSE$$)
2963 }
2964};
2965$JSCompiler_prototypeAlias$$.$handleContextMenu$ = $goog$nullFunction$$;
2966$JSCompiler_prototypeAlias$$.$handleMouseDown$ = function $$JSCompiler_prototypeAlias$$$$handleMouseDown$$($e$$43$$) {
2967 this.isEnabled() && ($JSCompiler_StaticMethods_isAutoState$$(this, 2) && $JSCompiler_StaticMethods_setHighlighted$$(this, $JSCompiler_alias_TRUE$$), $JSCompiler_StaticMethods_isMouseActionButton$$($e$$43$$) && ($JSCompiler_StaticMethods_isAutoState$$(this, 4) && this.setActive($JSCompiler_alias_TRUE$$), this.$renderer_$.$isFocusable$(this) && this.$getKeyEventTarget$().focus()));
2968 !this.$allowTextSelection_$ && $JSCompiler_StaticMethods_isMouseActionButton$$($e$$43$$) && $e$$43$$.preventDefault()
2969};
2970$JSCompiler_prototypeAlias$$.$handleMouseUp$ = function $$JSCompiler_prototypeAlias$$$$handleMouseUp$$($e$$44$$) {
2971 this.isEnabled() && ($JSCompiler_StaticMethods_isAutoState$$(this, 2) && $JSCompiler_StaticMethods_setHighlighted$$(this, $JSCompiler_alias_TRUE$$), this.$state_$ & 4 && ($JSCompiler_StaticMethods_performActionInternal$$(this, $e$$44$$) && $JSCompiler_StaticMethods_isAutoState$$(this, 4)) && this.setActive($JSCompiler_alias_FALSE$$))
2972};
2973$JSCompiler_prototypeAlias$$.$handleDblClick$ = function $$JSCompiler_prototypeAlias$$$$handleDblClick$$($e$$45$$) {
2974 this.isEnabled() && $JSCompiler_StaticMethods_performActionInternal$$(this, $e$$45$$)
2975};
2976function $JSCompiler_StaticMethods_performActionInternal$$($JSCompiler_StaticMethods_performActionInternal$self$$, $e$$46$$) {
2977 if($JSCompiler_StaticMethods_isAutoState$$($JSCompiler_StaticMethods_performActionInternal$self$$, 16)) {
2978 var $actionEvent_check$$inline_621_open$$inline_627$$ = !($JSCompiler_StaticMethods_performActionInternal$self$$.$state_$ & 16);
2979 $JSCompiler_StaticMethods_isTransitionAllowed$$($JSCompiler_StaticMethods_performActionInternal$self$$, 16, $actionEvent_check$$inline_621_open$$inline_627$$) && $JSCompiler_StaticMethods_performActionInternal$self$$.$setState$(16, $actionEvent_check$$inline_621_open$$inline_627$$)
2980 }
2981 $JSCompiler_StaticMethods_isAutoState$$($JSCompiler_StaticMethods_performActionInternal$self$$, 8) && $JSCompiler_StaticMethods_isTransitionAllowed$$($JSCompiler_StaticMethods_performActionInternal$self$$, 8, $JSCompiler_alias_TRUE$$) && $JSCompiler_StaticMethods_performActionInternal$self$$.$setState$(8, $JSCompiler_alias_TRUE$$);
2982 $JSCompiler_StaticMethods_isAutoState$$($JSCompiler_StaticMethods_performActionInternal$self$$, 64) && ($actionEvent_check$$inline_621_open$$inline_627$$ = !($JSCompiler_StaticMethods_performActionInternal$self$$.$state_$ & 64), $JSCompiler_StaticMethods_isTransitionAllowed$$($JSCompiler_StaticMethods_performActionInternal$self$$, 64, $actionEvent_check$$inline_621_open$$inline_627$$) && $JSCompiler_StaticMethods_performActionInternal$self$$.$setState$(64, $actionEvent_check$$inline_621_open$$inline_627$$));
2983 $actionEvent_check$$inline_621_open$$inline_627$$ = new $goog$events$Event$$("action", $JSCompiler_StaticMethods_performActionInternal$self$$);
2984 $e$$46$$ && ($actionEvent_check$$inline_621_open$$inline_627$$.altKey = $e$$46$$.altKey, $actionEvent_check$$inline_621_open$$inline_627$$.ctrlKey = $e$$46$$.ctrlKey, $actionEvent_check$$inline_621_open$$inline_627$$.metaKey = $e$$46$$.metaKey, $actionEvent_check$$inline_621_open$$inline_627$$.shiftKey = $e$$46$$.shiftKey, $actionEvent_check$$inline_621_open$$inline_627$$.$platformModifierKey$ = $e$$46$$.$platformModifierKey$);
2985 return $JSCompiler_StaticMethods_performActionInternal$self$$.dispatchEvent($actionEvent_check$$inline_621_open$$inline_627$$)
2986}
2987$JSCompiler_prototypeAlias$$.$handleFocus$ = function $$JSCompiler_prototypeAlias$$$$handleFocus$$() {
2988 $JSCompiler_StaticMethods_isAutoState$$(this, 32) && $JSCompiler_StaticMethods_isTransitionAllowed$$(this, 32, $JSCompiler_alias_TRUE$$) && this.$setState$(32, $JSCompiler_alias_TRUE$$)
2989};
2990$JSCompiler_prototypeAlias$$.$handleBlur$ = function $$JSCompiler_prototypeAlias$$$$handleBlur$$() {
2991 $JSCompiler_StaticMethods_isAutoState$$(this, 4) && this.setActive($JSCompiler_alias_FALSE$$);
2992 $JSCompiler_StaticMethods_isAutoState$$(this, 32) && $JSCompiler_StaticMethods_isTransitionAllowed$$(this, 32, $JSCompiler_alias_FALSE$$) && this.$setState$(32, $JSCompiler_alias_FALSE$$)
2993};
2994$JSCompiler_prototypeAlias$$.$handleKeyEvent$ = function $$JSCompiler_prototypeAlias$$$$handleKeyEvent$$($e$$49$$) {
2995 return this.$visible_$ && this.isEnabled() && 13 == $e$$49$$.keyCode && $JSCompiler_StaticMethods_performActionInternal$$(this, $e$$49$$) ? ($e$$49$$.preventDefault(), $e$$49$$.stopPropagation(), $JSCompiler_alias_TRUE$$) : $JSCompiler_alias_FALSE$$
2996};
2997$goog$isFunction$$($goog$ui$Control$$) || $JSCompiler_alias_THROW$$(Error("Invalid component class " + $goog$ui$Control$$));
2998$goog$isFunction$$($goog$ui$ControlRenderer$$) || $JSCompiler_alias_THROW$$(Error("Invalid renderer class " + $goog$ui$ControlRenderer$$));
2999var $key$$inline_637$$ = $goog$getUid$$($goog$ui$Control$$);
3000$goog$ui$registry$defaultRenderers_$$[$key$$inline_637$$] = $goog$ui$ControlRenderer$$;
3001function $decoratorFn$$inline_639$$() {
3002 return new $goog$ui$Control$$($JSCompiler_alias_NULL$$)
3003}
3004$goog$isFunction$$($decoratorFn$$inline_639$$) || $JSCompiler_alias_THROW$$(Error("Invalid decorator function " + $decoratorFn$$inline_639$$));
3005function $goog$ui$TextareaRenderer$$() {
3006}
3007$goog$inherits$$($goog$ui$TextareaRenderer$$, $goog$ui$ControlRenderer$$);
3008$goog$addSingletonGetter$$($goog$ui$TextareaRenderer$$);
3009$JSCompiler_prototypeAlias$$ = $goog$ui$TextareaRenderer$$.prototype;
3010$JSCompiler_prototypeAlias$$.$decorate$ = function $$JSCompiler_prototypeAlias$$$$decorate$$($control$$11$$, $element$$104$$) {
3011 $JSCompiler_StaticMethods_setHandleMouseEvents$$($control$$11$$);
3012 $control$$11$$.$autoStates_$ &= -256;
3013 $control$$11$$.$inDocument_$ && $control$$11$$.$state_$ & 32 && $JSCompiler_alias_THROW$$(Error("Component already rendered"));
3014 $control$$11$$.$state_$ & 32 && $control$$11$$.$setState$(32, $JSCompiler_alias_FALSE$$);
3015 $control$$11$$.$supportedStates_$ &= -33;
3016 $goog$ui$TextareaRenderer$$.$superClass_$.$decorate$.call(this, $control$$11$$, $element$$104$$);
3017 $control$$11$$.$setContent$($element$$104$$.value);
3018 return $element$$104$$
3019};
3020$JSCompiler_prototypeAlias$$.$canDecorate$ = function $$JSCompiler_prototypeAlias$$$$canDecorate$$($element$$106$$) {
3021 return"TEXTAREA" == $element$$106$$.tagName
3022};
3023$JSCompiler_prototypeAlias$$.$setRightToLeft$ = $goog$nullFunction$$;
3024$JSCompiler_prototypeAlias$$.$isFocusable$ = function $$JSCompiler_prototypeAlias$$$$isFocusable$$($textarea$$1$$) {
3025 return $textarea$$1$$.isEnabled()
3026};
3027$JSCompiler_prototypeAlias$$.$setFocusable$ = $goog$nullFunction$$;
3028$JSCompiler_prototypeAlias$$.$setState$ = function $$JSCompiler_prototypeAlias$$$$setState$$($element$$107_textarea$$2$$, $state$$16$$, $enable$$13$$) {
3029 $goog$ui$TextareaRenderer$$.$superClass_$.$setState$.call(this, $element$$107_textarea$$2$$, $state$$16$$, $enable$$13$$);
3030 if(($element$$107_textarea$$2$$ = $element$$107_textarea$$2$$.$getElement$()) && 1 == $state$$16$$) {
3031 $element$$107_textarea$$2$$.disabled = $enable$$13$$
3032 }
3033};
3034$JSCompiler_prototypeAlias$$.$updateAriaState$ = $goog$nullFunction$$;
3035$JSCompiler_prototypeAlias$$.$setContent$ = function $$JSCompiler_prototypeAlias$$$$setContent$$($element$$108$$, $value$$78$$) {
3036 $element$$108$$ && ($element$$108$$.value = $value$$78$$)
3037};
3038$JSCompiler_prototypeAlias$$.$getCssClass$ = $JSCompiler_returnArg$$("goog-textarea");
3039function $goog$ui$Textarea$$($content$$7$$, $opt_renderer$$1$$, $opt_domHelper$$4$$) {
3040 $goog$ui$Control$$.call(this, $content$$7$$, $opt_renderer$$1$$ || $goog$ui$TextareaRenderer$$.$getInstance$(), $opt_domHelper$$4$$);
3041 $JSCompiler_StaticMethods_setHandleMouseEvents$$(this);
3042 this.$setAllowTextSelection$($JSCompiler_alias_TRUE$$);
3043 $content$$7$$ || (this.$content_$ = "")
3044}
3045$goog$inherits$$($goog$ui$Textarea$$, $goog$ui$Control$$);
3046var $goog$ui$Textarea$NEEDS_HELP_SHRINKING_$$ = $goog$userAgent$GECKO$$ || $goog$userAgent$WEBKIT$$;
3047$JSCompiler_prototypeAlias$$ = $goog$ui$Textarea$$.prototype;
3048$JSCompiler_prototypeAlias$$.$isResizing_$ = $JSCompiler_alias_FALSE$$;
3049$JSCompiler_prototypeAlias$$.$height_$ = 0;
3050$JSCompiler_prototypeAlias$$.$maxHeight_$ = 0;
3051$JSCompiler_prototypeAlias$$.$minHeight_$ = 0;
3052$JSCompiler_prototypeAlias$$.$hasDiscoveredTextareaCharacteristics_$ = $JSCompiler_alias_FALSE$$;
3053$JSCompiler_prototypeAlias$$.$needsPaddingBorderFix_$ = $JSCompiler_alias_FALSE$$;
3054$JSCompiler_prototypeAlias$$.$scrollHeightIncludesPadding_$ = $JSCompiler_alias_FALSE$$;
3055$JSCompiler_prototypeAlias$$.$scrollHeightIncludesBorder_$ = $JSCompiler_alias_FALSE$$;
3056function $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$$($JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$self$$) {
3057 return $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$self$$.$paddingBox_$.top + $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$self$$.$paddingBox_$.bottom + $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$self$$.$borderBox_$.top + $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$self$$.$borderBox_$.bottom
3058}
3059function $JSCompiler_StaticMethods_getMinHeight_$$($JSCompiler_StaticMethods_getMinHeight_$self$$) {
3060 var $minHeight$$ = $JSCompiler_StaticMethods_getMinHeight_$self$$.$minHeight_$, $textarea$$4$$ = $JSCompiler_StaticMethods_getMinHeight_$self$$.$getElement$();
3061 $minHeight$$ && ($textarea$$4$$ && $JSCompiler_StaticMethods_getMinHeight_$self$$.$needsPaddingBorderFix_$) && ($minHeight$$ -= $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$$($JSCompiler_StaticMethods_getMinHeight_$self$$));
3062 return $minHeight$$
3063}
3064function $JSCompiler_StaticMethods_getMaxHeight_$$($JSCompiler_StaticMethods_getMaxHeight_$self$$) {
3065 var $maxHeight$$ = $JSCompiler_StaticMethods_getMaxHeight_$self$$.$maxHeight_$, $textarea$$5$$ = $JSCompiler_StaticMethods_getMaxHeight_$self$$.$getElement$();
3066 $maxHeight$$ && ($textarea$$5$$ && $JSCompiler_StaticMethods_getMaxHeight_$self$$.$needsPaddingBorderFix_$) && ($maxHeight$$ -= $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$$($JSCompiler_StaticMethods_getMaxHeight_$self$$));
3067 return $maxHeight$$
3068}
3069$JSCompiler_prototypeAlias$$.$setContent$ = function $$JSCompiler_prototypeAlias$$$$setContent$$($content$$8$$) {
3070 $goog$ui$Textarea$$.$superClass_$.$setContent$.call(this, $content$$8$$);
3071 this.$getElement$() && this.$grow_$()
3072};
3073$JSCompiler_prototypeAlias$$.$enterDocument$ = function $$JSCompiler_prototypeAlias$$$$enterDocument$$() {
3074 $goog$ui$Textarea$$.$superClass_$.$enterDocument$.call(this);
3075 var $textarea$$6$$ = this.$getElement$();
3076 $goog$style$setStyle$$($textarea$$6$$, {overflowY:"hidden", overflowX:"auto", boxSizing:"border-box", MsBoxSizing:"border-box", WebkitBoxSizing:"border-box", MozBoxSizing:"border-box"});
3077 this.$paddingBox_$ = $goog$style$getBox_$$($textarea$$6$$, "padding");
3078 this.$borderBox_$ = $goog$style$getBorderBox$$($textarea$$6$$);
3079 $JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$($JSCompiler_StaticMethods_listen$$(this.$getHandler$(), $textarea$$6$$, "scroll", this.$grow_$), $textarea$$6$$, "focus", this.$grow_$), $textarea$$6$$, "keyup", this.$grow_$), $textarea$$6$$, "mouseup", this.$mouseUpListener_$);
3080 this.$getElement$() && this.$grow_$()
3081};
3082function $JSCompiler_StaticMethods_getHeight_$$($JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$) {
3083 if(!$JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$hasDiscoveredTextareaCharacteristics_$) {
3084 var $textarea$$7_textarea$$inline_654$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$getElement$().cloneNode($JSCompiler_alias_FALSE$$);
3085 $goog$style$setStyle$$($textarea$$7_textarea$$inline_654$$, {position:"absolute", height:"auto", top:"-9999px", margin:"0", padding:"1px", border:"1px solid #000", overflow:"hidden"});
3086 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$getDomHelper$().$document_$.body.appendChild($textarea$$7_textarea$$inline_654$$);
3087 var $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ = $textarea$$7_textarea$$inline_654$$.scrollHeight;
3088 $textarea$$7_textarea$$inline_654$$.style.padding = "10px";
3089 var $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ = $textarea$$7_textarea$$inline_654$$.scrollHeight;
3090 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesPadding_$ = $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ > $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$;
3091 $textarea$$7_textarea$$inline_654$$.style.borderWidth = "10px";
3092 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesBorder_$ = $textarea$$7_textarea$$inline_654$$.scrollHeight > $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$;
3093 $textarea$$7_textarea$$inline_654$$.style.height = "100px";
3094 100 != $textarea$$7_textarea$$inline_654$$.offsetHeight && ($JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$needsPaddingBorderFix_$ = $JSCompiler_alias_TRUE$$);
3095 $goog$dom$removeNode$$($textarea$$7_textarea$$inline_654$$);
3096 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$hasDiscoveredTextareaCharacteristics_$ = $JSCompiler_alias_TRUE$$
3097 }
3098 var $textarea$$7_textarea$$inline_654$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$getElement$(), $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$getElement$().scrollHeight, $borderBox$$inline_662_textarea$$inline_659$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$getElement$(), $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ = $borderBox$$inline_662_textarea$$inline_659$$.offsetHeight -
3099 $borderBox$$inline_662_textarea$$inline_659$$.clientHeight;
3100 if(!$JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesPadding_$) {
3101 var $paddingBox$$inline_661$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$paddingBox_$, $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ = $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ - ($paddingBox$$inline_661$$.top + $paddingBox$$inline_661$$.bottom)
3102 }
3103 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesBorder_$ || ($borderBox$$inline_662_textarea$$inline_659$$ = $goog$style$getBorderBox$$($borderBox$$inline_662_textarea$$inline_659$$), $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ -= $borderBox$$inline_662_textarea$$inline_659$$.top + $borderBox$$inline_662_textarea$$inline_659$$.bottom);
3104 $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ += 0 < $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ ? $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ : 0;
3105 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$needsPaddingBorderFix_$ ? $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ -= $JSCompiler_StaticMethods_getPaddingBorderBoxHeight_$$($JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$) : ($JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesPadding_$ || ($height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$ = $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$paddingBox_$,
3106 $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ += $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$.top + $height$$inline_660_paddingBox$$3_paddingScrollHeight$$inline_656$$.bottom), $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.$scrollHeightIncludesBorder_$ || ($JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$ = $goog$style$getBorderBox$$($textarea$$7_textarea$$inline_654$$), $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$ +=
3107 $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.top + $JSCompiler_StaticMethods_getHeight_$self_borderBox$$3$$.bottom));
3108 return $JSCompiler_temp_const$$12_height$$21_initialScrollHeight$$inline_655$$
3109}
3110function $JSCompiler_StaticMethods_setHeight_$$($JSCompiler_StaticMethods_setHeight_$self$$, $height$$22$$) {
3111 $JSCompiler_StaticMethods_setHeight_$self$$.$height_$ != $height$$22$$ && ($JSCompiler_StaticMethods_setHeight_$self$$.$height_$ = $height$$22$$, $JSCompiler_StaticMethods_setHeight_$self$$.$getElement$().style.height = $height$$22$$ + "px")
3112}
3113function $JSCompiler_StaticMethods_setHeightToEstimate_$$($JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$) {
3114 $JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$ = $JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$.$getElement$();
3115 $JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$.style.height = "auto";
3116 var $newlines$$ = $JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$.value.match(/\n/g) || [];
3117 $JSCompiler_StaticMethods_setHeightToEstimate_$self_textarea$$8$$.rows = $newlines$$.length + 1
3118}
3119$JSCompiler_prototypeAlias$$.$grow_$ = function $$JSCompiler_prototypeAlias$$$$grow_$$() {
3120 if(!this.$isResizing_$) {
3121 var $shouldCallShrink_textarea$$inline_668$$ = $JSCompiler_alias_FALSE$$;
3122 this.$isResizing_$ = $JSCompiler_alias_TRUE$$;
3123 var $isEmpty$$inline_669_textarea$$11$$ = this.$getElement$(), $oldHeight$$ = this.$height_$;
3124 if($isEmpty$$inline_669_textarea$$11$$.scrollHeight) {
3125 var $minHeight$$inline_672_setMinHeight$$ = $JSCompiler_alias_FALSE$$, $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ = $JSCompiler_alias_FALSE$$, $currentHeight$$inline_671_newHeight$$ = $JSCompiler_StaticMethods_getHeight_$$(this), $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$ = $isEmpty$$inline_669_textarea$$11$$.offsetHeight, $minHeight$$1$$ = $JSCompiler_StaticMethods_getMinHeight_$$(this), $maxHeight$$1$$ = $JSCompiler_StaticMethods_getMaxHeight_$$(this);
3126 $minHeight$$1$$ && $currentHeight$$inline_671_newHeight$$ < $minHeight$$1$$ ? ($JSCompiler_StaticMethods_setHeight_$$(this, $minHeight$$1$$), $minHeight$$inline_672_setMinHeight$$ = $JSCompiler_alias_TRUE$$) : $maxHeight$$1$$ && $currentHeight$$inline_671_newHeight$$ > $maxHeight$$1$$ ? ($JSCompiler_StaticMethods_setHeight_$$(this, $maxHeight$$1$$), $isEmpty$$inline_669_textarea$$11$$.style.overflowY = "", $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ = $JSCompiler_alias_TRUE$$) :
3127 $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$ != $currentHeight$$inline_671_newHeight$$ ? $JSCompiler_StaticMethods_setHeight_$$(this, $currentHeight$$inline_671_newHeight$$) : this.$height_$ || (this.$height_$ = $currentHeight$$inline_671_newHeight$$);
3128 !$minHeight$$inline_672_setMinHeight$$ && (!$scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ && $goog$ui$Textarea$NEEDS_HELP_SHRINKING_$$) && ($shouldCallShrink_textarea$$inline_668$$ = $JSCompiler_alias_TRUE$$)
3129 }else {
3130 $JSCompiler_StaticMethods_setHeightToEstimate_$$(this)
3131 }
3132 this.$isResizing_$ = $JSCompiler_alias_FALSE$$;
3133 $shouldCallShrink_textarea$$inline_668$$ && ($shouldCallShrink_textarea$$inline_668$$ = this.$getElement$(), this.$isResizing_$ || (this.$isResizing_$ = $JSCompiler_alias_TRUE$$, $isEmpty$$inline_669_textarea$$11$$ = $JSCompiler_alias_FALSE$$, $shouldCallShrink_textarea$$inline_668$$.value || ($shouldCallShrink_textarea$$inline_668$$.value = " ", $isEmpty$$inline_669_textarea$$11$$ = $JSCompiler_alias_TRUE$$), ($scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ = $shouldCallShrink_textarea$$inline_668$$.scrollHeight) ?
3134 ($currentHeight$$inline_671_newHeight$$ = $JSCompiler_StaticMethods_getHeight_$$(this), $minHeight$$inline_672_setMinHeight$$ = $JSCompiler_StaticMethods_getMinHeight_$$(this), $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$ = $JSCompiler_StaticMethods_getMaxHeight_$$(this), !($minHeight$$inline_672_setMinHeight$$ && $currentHeight$$inline_671_newHeight$$ <= $minHeight$$inline_672_setMinHeight$$) && !($currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$ && $currentHeight$$inline_671_newHeight$$ >=
3135 $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$) && ($currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$ = this.$paddingBox_$, $shouldCallShrink_textarea$$inline_668$$.style.paddingBottom = $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$.bottom + 1 + "px", $JSCompiler_StaticMethods_getHeight_$$(this) == $currentHeight$$inline_671_newHeight$$ && ($shouldCallShrink_textarea$$inline_668$$.style.paddingBottom = $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$.bottom +
3136 $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ + "px", $shouldCallShrink_textarea$$inline_668$$.scrollTop = 0, $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ = $JSCompiler_StaticMethods_getHeight_$$(this) - $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$, $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$ >= $minHeight$$inline_672_setMinHeight$$ ? $JSCompiler_StaticMethods_setHeight_$$(this, $scrollHeight$$inline_670_setMaxHeight_shrinkToHeight$$inline_675$$) :
3137 $JSCompiler_StaticMethods_setHeight_$$(this, $minHeight$$inline_672_setMinHeight$$)), $shouldCallShrink_textarea$$inline_668$$.style.paddingBottom = $currentHeight_maxHeight$$inline_673_paddingBox$$inline_674$$.bottom + "px")) : $JSCompiler_StaticMethods_setHeightToEstimate_$$(this), $isEmpty$$inline_669_textarea$$11$$ && ($shouldCallShrink_textarea$$inline_668$$.value = ""), this.$isResizing_$ = $JSCompiler_alias_FALSE$$));
3138 $oldHeight$$ != this.$height_$ && this.dispatchEvent("resize")
3139 }
3140};
3141$JSCompiler_prototypeAlias$$.$mouseUpListener_$ = function $$JSCompiler_prototypeAlias$$$$mouseUpListener_$$() {
3142 var $dropShadow_textarea$$13$$ = this.$getElement$(), $height$$24$$ = $dropShadow_textarea$$13$$.offsetHeight;
3143 $dropShadow_textarea$$13$$.filters && $dropShadow_textarea$$13$$.filters.length && ($dropShadow_textarea$$13$$ = $dropShadow_textarea$$13$$.filters.item("DXImageTransform.Microsoft.DropShadow")) && ($height$$24$$ -= $dropShadow_textarea$$13$$.offX);
3144 $height$$24$$ != this.$height_$ && (this.$height_$ = this.$minHeight_$ = $height$$24$$)
3145};
3146$goog$userAgent$IE$$ && $goog$userAgent$isVersion$$(8);
3147function $soy$$0$0escapeHtml$$($value$$80$$) {
3148 return"object" === typeof $value$$80$$ && $value$$80$$ && 0 === $value$$80$$.$contentKind$ ? $value$$80$$.content : String($value$$80$$).replace($soy$esc$$0$0MATCHER_FOR_ESCAPE_HTML_$$, $soy$esc$$0$0REPLACER_FOR_ESCAPE_HTML__AND__NORMALIZE_HTML__AND__ESCAPE_HTML_NOSPACE__AND__NORMALIZE_HTML_NOSPACE_$$)
3149}
3150var $soy$esc$$0$0ESCAPE_MAP_FOR_ESCAPE_HTML__AND__NORMALIZE_HTML__AND__ESCAPE_HTML_NOSPACE__AND__NORMALIZE_HTML_NOSPACE_$$ = {"\x00":"&#0;", '"':"&quot;", "&":"&amp;", "'":"&#39;", "<":"&lt;", ">":"&gt;", "\t":"&#9;", "\n":"&#10;", "\x0B":"&#11;", "\f":"&#12;", "\r":"&#13;", " ":"&#32;", "-":"&#45;", "/":"&#47;", "=":"&#61;", "`":"&#96;", "\u0085":"&#133;", "\u00a0":"&#160;", "\u2028":"&#8232;", "\u2029":"&#8233;"};
3151function $soy$esc$$0$0REPLACER_FOR_ESCAPE_HTML__AND__NORMALIZE_HTML__AND__ESCAPE_HTML_NOSPACE__AND__NORMALIZE_HTML_NOSPACE_$$($ch$$7$$) {
3152 return $soy$esc$$0$0ESCAPE_MAP_FOR_ESCAPE_HTML__AND__NORMALIZE_HTML__AND__ESCAPE_HTML_NOSPACE__AND__NORMALIZE_HTML_NOSPACE_$$[$ch$$7$$]
3153}
3154var $soy$esc$$0$0MATCHER_FOR_ESCAPE_HTML_$$ = /[\x00\x22\x26\x27\x3c\x3e]/g;
3155function $annotorious$templates$popup$$() {
3156 return'<div class="annotorious-popup top-left" style="position:absolute;z-index:1"><div class="annotorious-popup-buttons"><a class="annotorious-popup-button annotorious-popup-button-edit" title="Edit" href="javascript:void(0);">EDIT</a><a class="annotorious-popup-button annotorious-popup-button-delete" title="Delete" href="javascript:void(0);">DELETE</a></div><span class="annotorious-popup-text"></span></div>'
3157}
3158function $annotorious$templates$editform$$() {
3159 return'<div class="annotorious-editor" style="position:absolute;z-index:1"><form><textarea class="annotorious-editor-text" placeholder="Add a Comment..." tabindex="1"></textarea><div class="annotorious-editor-button-container"><a class="annotorious-editor-button annotorious-editor-button-cancel" href="javascript:void(0);" tabindex="3">Cancel</a><a class="annotorious-editor-button annotorious-editor-button-save" href="javascript:void(0);" tabindex="2">Save</a></div></form></div>'
3160}
3161;function $annotorious$Editor$$($annotator$$23$$) {
3162 function $opt_callback$$inline_686$$() {
3163 var $JSCompiler_StaticMethods_resize$self$$inline_683$$ = $self$$5$$.$_textarea$;
3164 $JSCompiler_StaticMethods_resize$self$$inline_683$$.$getElement$() && $JSCompiler_StaticMethods_resize$self$$inline_683$$.$grow_$()
3165 }
3166 this.element = $goog$soy$renderAsElement$$($annotorious$templates$editform$$);
3167 this.$_annotator$ = $annotator$$23$$;
3168 this.$_item$ = $annotator$$23$$.getItem();
3169 this.$_textarea$ = new $goog$ui$Textarea$$("");
3170 this.$_btnCancel$ = $query$$inline_154$$(".annotorious-editor-button-cancel", this.element)[0];
3171 this.$_btnSave$ = $query$$inline_154$$(".annotorious-editor-button-save", this.element)[0];
3172 var $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$;
3173 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = this.$_btnSave$;
3174 $goog$dom$BrowserFeature$CAN_USE_PARENT_ELEMENT_PROPERTY$$ ? $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$.parentElement : ($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$.parentNode,
3175 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = $goog$dom$isElement$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$) ? $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ : $JSCompiler_alias_NULL$$);
3176 this.$_btnContainer$ = $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$;
3177 this.$_extraFields$ = [];
3178 var $self$$5$$ = this;
3179 $goog$events$listen$$(this.$_btnCancel$, "click", function($event$$4$$) {
3180 $event$$4$$.preventDefault();
3181 $annotator$$23$$.stopSelection($self$$5$$.$_original_annotation$);
3182 $self$$5$$.close()
3183 });
3184 $goog$events$listen$$(this.$_btnSave$, "click", function($annotation$$8_event$$5$$) {
3185 $annotation$$8_event$$5$$.preventDefault();
3186 $annotation$$8_event$$5$$ = $self$$5$$.$getAnnotation$();
3187 $annotator$$23$$.$addAnnotation$($annotation$$8_event$$5$$);
3188 $annotator$$23$$.stopSelection();
3189 $self$$5$$.$_original_annotation$ ? $annotator$$23$$.fireEvent("onAnnotationUpdated", $annotation$$8_event$$5$$) : $annotator$$23$$.fireEvent("onAnnotationCreated", $annotation$$8_event$$5$$);
3190 $self$$5$$.close()
3191 });
3192 $goog$style$showElement$$(this.element, $JSCompiler_alias_FALSE$$);
3193 $annotator$$23$$.element.appendChild(this.element);
3194 this.$_textarea$.$decorate$($query$$inline_154$$(".annotorious-editor-text", this.element)[0]);
3195 var $div$$inline_685$$ = this.element;
3196 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = document.createElement("div");
3197 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "position", "absolute");
3198 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "top", "0px");
3199 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "right", "0px");
3200 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "width", "5px");
3201 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "height", "100%");
3202 $goog$style$setStyle$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$, "cursor", "e-resize");
3203 $div$$inline_685$$.appendChild($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$);
3204 var $div_border$$inline_688_width_limit$$inline_689$$ = $goog$style$getBorderBox$$($div$$inline_685$$), $div_border$$inline_688_width_limit$$inline_689$$ = $goog$style$getBounds$$($div$$inline_685$$).width - $div_border$$inline_688_width_limit$$inline_689$$.right - $div_border$$inline_688_width_limit$$inline_689$$.left;
3205 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$ = new $goog$fx$Dragger$$($JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$);
3206 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$.$limits$ = new $goog$math$Rect$$($div_border$$inline_688_width_limit$$inline_689$$, 0, 800, 0) || new $goog$math$Rect$$(NaN, NaN, NaN, NaN);
3207 $JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$.$defaultAction$ = function $$JSCompiler_inline_result$$26_dragger$$inline_690_element$$inline_677_handle$$inline_687_parent$$inline_678$$$$defaultAction$$($x$$inline_691$$) {
3208 $goog$style$setStyle$$($div$$inline_685$$, "width", $x$$inline_691$$ + "px");
3209 $opt_callback$$inline_686$$ && $opt_callback$$inline_686$$()
3210 }
3211}
3212$JSCompiler_prototypeAlias$$ = $annotorious$Editor$$.prototype;
3213$JSCompiler_prototypeAlias$$.$addField$ = function $$JSCompiler_prototypeAlias$$$$addField$$($field_refNode$$inline_697$$) {
3214 var $fieldEl$$ = $goog$dom$createDom$$("div", "annotorious-editor-field");
3215 $goog$isString$$($field_refNode$$inline_697$$) ? $fieldEl$$.innerHTML = $field_refNode$$inline_697$$ : $goog$isFunction$$($field_refNode$$inline_697$$) ? this.$_extraFields$.push({$el$:$fieldEl$$, $fn$:$field_refNode$$inline_697$$}) : $goog$dom$isElement$$($field_refNode$$inline_697$$) && $fieldEl$$.appendChild($field_refNode$$inline_697$$);
3216 $field_refNode$$inline_697$$ = this.$_btnContainer$;
3217 $field_refNode$$inline_697$$.parentNode && $field_refNode$$inline_697$$.parentNode.insertBefore($fieldEl$$, $field_refNode$$inline_697$$)
3218};
3219$JSCompiler_prototypeAlias$$.open = function $$JSCompiler_prototypeAlias$$$open$($opt_annotation$$) {
3220 (this.$_current_annotation$ = this.$_original_annotation$ = $opt_annotation$$) && this.$_textarea$.$setContent$(String($opt_annotation$$.text));
3221 $goog$style$showElement$$(this.element, $JSCompiler_alias_TRUE$$);
3222 this.$_textarea$.$getElement$().focus();
3223 $goog$array$forEach$$(this.$_extraFields$, function($field$$1$$) {
3224 var $f$$45$$ = $field$$1$$.$fn$($opt_annotation$$);
3225 $goog$isString$$($f$$45$$) ? $field$$1$$.$el$.innerHTML = $f$$45$$ : $goog$dom$isElement$$($f$$45$$) && ($goog$dom$removeChildren$$($field$$1$$.$el$), $field$$1$$.$el$.appendChild($f$$45$$))
3226 })
3227};
3228$JSCompiler_prototypeAlias$$.close = function $$JSCompiler_prototypeAlias$$$close$() {
3229 $goog$style$showElement$$(this.element, $JSCompiler_alias_FALSE$$);
3230 this.$_textarea$.$setContent$("")
3231};
3232$JSCompiler_prototypeAlias$$.setPosition = function $$JSCompiler_prototypeAlias$$$setPosition$($xy$$) {
3233 $goog$style$setPosition$$(this.element, $xy$$.x, $xy$$.y)
3234};
3235$JSCompiler_prototypeAlias$$.$getAnnotation$ = function $$JSCompiler_prototypeAlias$$$$getAnnotation$$() {
3236 var $htmlText$$inline_708_sanitized$$;
3237 $htmlText$$inline_708_sanitized$$ = this.$_textarea$.$getElement$().value;
3238 var $stringBuffer$$inline_711$$ = new $goog$string$StringBuffer$$;
3239 (new $goog$string$html$HtmlParser$$).parse(new $goog$string$html$HtmlSanitizer$$($stringBuffer$$inline_711$$, function($url$$22$$) {
3240 return $url$$22$$
3241 }, $JSCompiler_alias_VOID$$), $htmlText$$inline_708_sanitized$$);
3242 $htmlText$$inline_708_sanitized$$ = $stringBuffer$$inline_711$$.toString();
3243 this.$_current_annotation$ ? this.$_current_annotation$.text = $htmlText$$inline_708_sanitized$$ : this.$_current_annotation$ = new $annotorious$Annotation$$(this.$_item$.src, $htmlText$$inline_708_sanitized$$, this.$_annotator$.$getActiveSelector$().getShape());
3244 return this.$_current_annotation$
3245};
3246$annotorious$Editor$$.prototype.addField = $annotorious$Editor$$.prototype.$addField$;
3247$annotorious$Editor$$.prototype.getAnnotation = $annotorious$Editor$$.prototype.$getAnnotation$;
3248function $annotorious$Hint$$($annotator$$24$$, $parent$$24$$, $opt_msg$$1$$) {
3249 var $self$$6$$ = this;
3250 $opt_msg$$1$$ || ($opt_msg$$1$$ = "Click and Drag to Annotate");
3251 this.element = $goog$soy$renderAsElement$$($annotorious$templates$image$hint$$, {$msg$:$opt_msg$$1$$});
3252 this.$_annotator$ = $annotator$$24$$;
3253 this.$_message$ = $query$$inline_154$$(".annotorious-hint-msg", this.element)[0];
3254 this.$_icon$ = $query$$inline_154$$(".annotorious-hint-icon", this.element)[0];
3255 this.$_overItemHandler$ = function $this$$_overItemHandler$$() {
3256 $self$$6$$.show()
3257 };
3258 this.$_outOfItemHandler$ = function $this$$_outOfItemHandler$$() {
3259 $JSCompiler_StaticMethods_hide$$($self$$6$$)
3260 };
3261 this.$_attachListeners$();
3262 $JSCompiler_StaticMethods_hide$$(this);
3263 $parent$$24$$.appendChild(this.element)
3264}
3265$annotorious$Hint$$.prototype.$_attachListeners$ = function $$annotorious$Hint$$$$$_attachListeners$$() {
3266 var $self$$7$$ = this;
3267 this.$_mouseOverListener$ = $goog$events$listen$$(this.$_icon$, "mouseover", function() {
3268 $self$$7$$.show();
3269 window.clearTimeout($self$$7$$.$_hideTimer$)
3270 });
3271 this.$_mouseOutListener$ = $goog$events$listen$$(this.$_icon$, "mouseout", function() {
3272 $JSCompiler_StaticMethods_hide$$($self$$7$$)
3273 });
3274 this.$_annotator$.$addHandler$("onMouseOverItem", this.$_overItemHandler$);
3275 this.$_annotator$.$addHandler$("onMouseOutOfItem", this.$_outOfItemHandler$)
3276};
3277$annotorious$Hint$$.prototype.$_detachListeners$ = function $$annotorious$Hint$$$$$_detachListeners$$() {
3278 $goog$events$unlistenByKey$$(this.$_mouseOverListener$);
3279 $goog$events$unlistenByKey$$(this.$_mouseOutListener$);
3280 this.$_annotator$.$removeHandler$("onMouseOverItem", this.$_overItemHandler$);
3281 this.$_annotator$.$removeHandler$("onMouseOutOfItem", this.$_outOfItemHandler$)
3282};
3283$annotorious$Hint$$.prototype.show = function $$annotorious$Hint$$$$show$() {
3284 window.clearTimeout(this.$_hideTimer$);
3285 $goog$style$setOpacity$$(this.$_message$, 0.8);
3286 var $self$$8$$ = this;
3287 this.$_hideTimer$ = window.setTimeout(function() {
3288 $JSCompiler_StaticMethods_hide$$($self$$8$$)
3289 }, 3E3)
3290};
3291function $JSCompiler_StaticMethods_hide$$($JSCompiler_StaticMethods_hide$self$$) {
3292 window.clearTimeout($JSCompiler_StaticMethods_hide$self$$.$_hideTimer$);
3293 $goog$style$setOpacity$$($JSCompiler_StaticMethods_hide$self$$.$_message$, 0)
3294}
3295$annotorious$Hint$$.prototype.$destroy$ = function $$annotorious$Hint$$$$$destroy$$() {
3296 this.$_detachListeners$();
3297 delete this.$_mouseOverListener$;
3298 delete this.$_mouseOutListener$;
3299 delete this.$_overItemHandler$;
3300 delete this.$_outOfItemHandler$;
3301 $goog$dom$removeNode$$(this.element)
3302};
3303function $annotorious$Popup$$($annotator$$25$$) {
3304 this.element = $goog$soy$renderAsElement$$($annotorious$templates$popup$$);
3305 this.$_annotator$ = $annotator$$25$$;
3306 this.$_text$ = $query$$inline_154$$(".annotorious-popup-text", this.element)[0];
3307 this.$_buttons$ = $query$$inline_154$$(".annotorious-popup-buttons", this.element)[0];
3308 this.$_cancelHide$ = $JSCompiler_alias_FALSE$$;
3309 this.$_extraFields$ = [];
3310 var $btnEdit$$ = $query$$inline_154$$(".annotorious-popup-button-edit", this.$_buttons$)[0], $btnDelete$$ = $query$$inline_154$$(".annotorious-popup-button-delete", this.$_buttons$)[0], $self$$9$$ = this;
3311 $goog$events$listen$$($btnEdit$$, "mouseover", function() {
3312 $goog$dom$classes$add$$($btnEdit$$, "annotorious-popup-button-active")
3313 });
3314 $goog$events$listen$$($btnEdit$$, "mouseout", function() {
3315 $goog$dom$classes$remove$$($btnEdit$$, "annotorious-popup-button-active")
3316 });
3317 $goog$events$listen$$($btnEdit$$, "click", function() {
3318 $goog$style$setOpacity$$($self$$9$$.element, 0);
3319 $goog$style$setStyle$$($self$$9$$.element, "pointer-events", "none");
3320 $annotator$$25$$.$editAnnotation$($self$$9$$.$_currentAnnotation$)
3321 });
3322 $goog$events$listen$$($btnDelete$$, "mouseover", function() {
3323 $goog$dom$classes$add$$($btnDelete$$, "annotorious-popup-button-active")
3324 });
3325 $goog$events$listen$$($btnDelete$$, "mouseout", function() {
3326 $goog$dom$classes$remove$$($btnDelete$$, "annotorious-popup-button-active")
3327 });
3328 $goog$events$listen$$($btnDelete$$, "click", function() {
3329 $annotator$$25$$.fireEvent("beforeAnnotationRemoved", $self$$9$$.$_currentAnnotation$) || ($goog$style$setOpacity$$($self$$9$$.element, 0), $goog$style$setStyle$$($self$$9$$.element, "pointer-events", "none"), $annotator$$25$$.$removeAnnotation$($self$$9$$.$_currentAnnotation$), $annotator$$25$$.fireEvent("onAnnotationRemoved", $self$$9$$.$_currentAnnotation$))
3330 });
3331 $annotorious$events$ui$hasMouse$$ && ($goog$events$listen$$(this.element, "mouseover", function() {
3332 window.clearTimeout($self$$9$$.$_buttonHideTimer$);
3333 0.9 > ($self$$9$$.$_buttons$.style[$goog$string$toCamelCase$$("opacity")] || "") && $goog$style$setOpacity$$($self$$9$$.$_buttons$, 0.9);
3334 $self$$9$$.clearHideTimer()
3335 }), $goog$events$listen$$(this.element, "mouseout", function() {
3336 $goog$style$setOpacity$$($self$$9$$.$_buttons$, 0);
3337 $self$$9$$.startHideTimer()
3338 }), $annotator$$25$$.$addHandler$("onMouseOutOfItem", function() {
3339 $self$$9$$.startHideTimer()
3340 }));
3341 $goog$style$setOpacity$$(this.$_buttons$, 0);
3342 $goog$style$setOpacity$$(this.element, 0);
3343 $goog$style$setStyle$$(this.element, "pointer-events", "none");
3344 $annotator$$25$$.element.appendChild(this.element)
3345}
3346$JSCompiler_prototypeAlias$$ = $annotorious$Popup$$.prototype;
3347$JSCompiler_prototypeAlias$$.$addField$ = function $$JSCompiler_prototypeAlias$$$$addField$$($field$$2$$) {
3348 var $fieldEl$$1$$ = $goog$dom$createDom$$("div", "annotorious-popup-field");
3349 $goog$isString$$($field$$2$$) ? $fieldEl$$1$$.innerHTML = $field$$2$$ : $goog$isFunction$$($field$$2$$) ? this.$_extraFields$.push({$el$:$fieldEl$$1$$, $fn$:$field$$2$$}) : $goog$dom$isElement$$($field$$2$$) && $fieldEl$$1$$.appendChild($field$$2$$);
3350 this.element.appendChild($fieldEl$$1$$)
3351};
3352$JSCompiler_prototypeAlias$$.startHideTimer = function $$JSCompiler_prototypeAlias$$$startHideTimer$() {
3353 this.$_cancelHide$ = $JSCompiler_alias_FALSE$$;
3354 if(!this.$_popupHideTimer$) {
3355 var $self$$10$$ = this;
3356 this.$_popupHideTimer$ = window.setTimeout(function() {
3357 $self$$10$$.$_annotator$.fireEvent("beforePopupHide", $self$$10$$);
3358 $self$$10$$.$_cancelHide$ || ($goog$style$setOpacity$$($self$$10$$.element, 0), $goog$style$setStyle$$($self$$10$$.element, "pointer-events", "none"), $goog$style$setOpacity$$($self$$10$$.$_buttons$, 0.9), delete $self$$10$$.$_popupHideTimer$)
3359 }, 150)
3360 }
3361};
3362$JSCompiler_prototypeAlias$$.clearHideTimer = function $$JSCompiler_prototypeAlias$$$clearHideTimer$() {
3363 this.$_cancelHide$ = $JSCompiler_alias_TRUE$$;
3364 this.$_popupHideTimer$ && (window.clearTimeout(this.$_popupHideTimer$), delete this.$_popupHideTimer$)
3365};
3366$JSCompiler_prototypeAlias$$.show = function $$JSCompiler_prototypeAlias$$$show$($annotation$$9$$, $xy$$1$$) {
3367 this.clearHideTimer();
3368 $xy$$1$$ && this.setPosition($xy$$1$$);
3369 $annotation$$9$$ && this.setAnnotation($annotation$$9$$);
3370 this.$_buttonHideTimer$ && window.clearTimeout(this.$_buttonHideTimer$);
3371 $goog$style$setOpacity$$(this.$_buttons$, 0.9);
3372 if($annotorious$events$ui$hasMouse$$) {
3373 var $self$$11$$ = this;
3374 this.$_buttonHideTimer$ = window.setTimeout(function() {
3375 $goog$style$setOpacity$$($self$$11$$.$_buttons$, 0)
3376 }, 1E3)
3377 }
3378 $goog$style$setOpacity$$(this.element, 0.9);
3379 $goog$style$setStyle$$(this.element, "pointer-events", "auto")
3380};
3381$JSCompiler_prototypeAlias$$.setPosition = function $$JSCompiler_prototypeAlias$$$setPosition$($xy$$2$$) {
3382 $goog$style$setPosition$$(this.element, new $goog$math$Coordinate$$($xy$$2$$.x, $xy$$2$$.y))
3383};
3384$JSCompiler_prototypeAlias$$.setAnnotation = function $$JSCompiler_prototypeAlias$$$setAnnotation$($annotation$$10$$) {
3385 this.$_currentAnnotation$ = $annotation$$10$$;
3386 this.$_text$.innerHTML = $annotation$$10$$.text ? $annotation$$10$$.text.replace(/\n/g, "<br/>") : '<span class="annotorious-popup-empty">No comment</span>';
3387 "editable" in $annotation$$10$$ && $annotation$$10$$.editable == $JSCompiler_alias_FALSE$$ ? $goog$style$showElement$$(this.$_buttons$, $JSCompiler_alias_FALSE$$) : $goog$style$showElement$$(this.$_buttons$, $JSCompiler_alias_TRUE$$);
3388 $goog$array$forEach$$(this.$_extraFields$, function($field$$3$$) {
3389 var $f$$46$$ = $field$$3$$.$fn$($annotation$$10$$);
3390 $goog$isString$$($f$$46$$) ? $field$$3$$.$el$.innerHTML = $f$$46$$ : $goog$dom$isElement$$($f$$46$$) && ($goog$dom$removeChildren$$($field$$3$$.$el$), $field$$3$$.$el$.appendChild($f$$46$$))
3391 })
3392};
3393$annotorious$Popup$$.prototype.addField = $annotorious$Popup$$.prototype.$addField$;
3394function $annotorious$mediatypes$image$Viewer$$($canvas$$, $annotator$$26$$) {
3395 this.$_canvas$ = $canvas$$;
3396 this.$_annotator$ = $annotator$$26$$;
3397 this.$_annotations$ = [];
3398 this.$_shapes$ = [];
3399 this.$_g2d$ = this.$_canvas$.getContext("2d");
3400 this.$_eventsEnabled$ = $JSCompiler_alias_TRUE$$;
3401 this.$_keepHighlighted$ = $JSCompiler_alias_FALSE$$;
3402 var $self$$12$$ = this;
3403 $goog$events$listen$$(this.$_canvas$, $annotorious$events$ui$EventType$MOVE$$, function($event$$15$$) {
3404 if($self$$12$$.$_eventsEnabled$) {
3405 var $topAnnotation$$inline_730$$ = $JSCompiler_StaticMethods_topAnnotationAt$$($self$$12$$, $event$$15$$.offsetX, $event$$15$$.offsetY);
3406 $topAnnotation$$inline_730$$ ? ($self$$12$$.$_keepHighlighted$ = $self$$12$$.$_keepHighlighted$ && $topAnnotation$$inline_730$$ == $self$$12$$.$_currentAnnotation$, $self$$12$$.$_currentAnnotation$ ? $self$$12$$.$_currentAnnotation$ != $topAnnotation$$inline_730$$ && ($self$$12$$.$_eventsEnabled$ = $JSCompiler_alias_FALSE$$, $self$$12$$.$_annotator$.popup.startHideTimer()) : ($self$$12$$.$_currentAnnotation$ = $topAnnotation$$inline_730$$, $JSCompiler_StaticMethods_redraw$$($self$$12$$), $self$$12$$.$_annotator$.fireEvent("onMouseOverAnnotation",
3407 {$annotation$:$self$$12$$.$_currentAnnotation$, mouseEvent:$event$$15$$}))) : !$self$$12$$.$_keepHighlighted$ && $self$$12$$.$_currentAnnotation$ && ($self$$12$$.$_eventsEnabled$ = $JSCompiler_alias_FALSE$$, $self$$12$$.$_annotator$.popup.startHideTimer())
3408 }else {
3409 $self$$12$$.$_cachedMouseEvent$ = $event$$15$$
3410 }
3411 });
3412 $annotator$$26$$.$addHandler$("onMouseOutOfItem", function() {
3413 delete $self$$12$$.$_currentAnnotation$;
3414 $self$$12$$.$_eventsEnabled$ = $JSCompiler_alias_TRUE$$
3415 });
3416 $annotator$$26$$.$addHandler$("beforePopupHide", function() {
3417 if(!$self$$12$$.$_eventsEnabled$ && $self$$12$$.$_cachedMouseEvent$) {
3418 var $previousAnnotation$$ = $self$$12$$.$_currentAnnotation$;
3419 $self$$12$$.$_currentAnnotation$ = $JSCompiler_StaticMethods_topAnnotationAt$$($self$$12$$, $self$$12$$.$_cachedMouseEvent$.offsetX, $self$$12$$.$_cachedMouseEvent$.offsetY);
3420 $self$$12$$.$_eventsEnabled$ = $JSCompiler_alias_TRUE$$;
3421 $previousAnnotation$$ != $self$$12$$.$_currentAnnotation$ ? ($JSCompiler_StaticMethods_redraw$$($self$$12$$), $self$$12$$.$_annotator$.fireEvent("onMouseOutOfAnnotation", {$annotation$:$previousAnnotation$$, mouseEvent:$self$$12$$.$_cachedMouseEvent$}), $self$$12$$.$_annotator$.fireEvent("onMouseOverAnnotation", {$annotation$:$self$$12$$.$_currentAnnotation$, mouseEvent:$self$$12$$.$_cachedMouseEvent$})) : $self$$12$$.$_currentAnnotation$ && $self$$12$$.$_annotator$.popup.clearHideTimer()
3422 }else {
3423 $JSCompiler_StaticMethods_redraw$$($self$$12$$)
3424 }
3425 })
3426}
3427$JSCompiler_prototypeAlias$$ = $annotorious$mediatypes$image$Viewer$$.prototype;
3428$JSCompiler_prototypeAlias$$.$addAnnotation$ = function $$JSCompiler_prototypeAlias$$$$addAnnotation$$($annotation$$11$$, $opt_replace$$2$$) {
3429 $opt_replace$$2$$ && ($opt_replace$$2$$ == this.$_currentAnnotation$ && delete this.$_currentAnnotation$, $goog$array$remove$$(this.$_annotations$, $opt_replace$$2$$), delete this.$_shapes$[$annotorious$shape$hashCode$$($opt_replace$$2$$.shapes[0])]);
3430 this.$_annotations$.push($annotation$$11$$);
3431 var $shape$$8_viewportShape$$ = $annotation$$11$$.shapes[0];
3432 if("pixel" != $shape$$8_viewportShape$$.units) {
3433 var $self$$13$$ = this, $shape$$8_viewportShape$$ = $annotorious$shape$transform$$($shape$$8_viewportShape$$, function($xy$$3$$) {
3434 return $self$$13$$.$_annotator$.$fromItemCoordinates$($xy$$3$$)
3435 })
3436 }
3437 this.$_shapes$[$annotorious$shape$hashCode$$($annotation$$11$$.shapes[0])] = $shape$$8_viewportShape$$;
3438 $JSCompiler_StaticMethods_redraw$$(this)
3439};
3440$JSCompiler_prototypeAlias$$.$removeAnnotation$ = function $$JSCompiler_prototypeAlias$$$$removeAnnotation$$($annotation$$12$$) {
3441 $annotation$$12$$ == this.$_currentAnnotation$ && delete this.$_currentAnnotation$;
3442 $goog$array$remove$$(this.$_annotations$, $annotation$$12$$);
3443 delete this.$_shapes$[$annotorious$shape$hashCode$$($annotation$$12$$.shapes[0])];
3444 $JSCompiler_StaticMethods_redraw$$(this)
3445};
3446$JSCompiler_prototypeAlias$$.$getAnnotations$ = function $$JSCompiler_prototypeAlias$$$$getAnnotations$$() {
3447 return $goog$array$toArray$$(this.$_annotations$)
3448};
3449$JSCompiler_prototypeAlias$$.$highlightAnnotation$ = function $$JSCompiler_prototypeAlias$$$$highlightAnnotation$$($opt_annotation$$1$$) {
3450 (this.$_currentAnnotation$ = $opt_annotation$$1$$) ? this.$_keepHighlighted$ = $JSCompiler_alias_TRUE$$ : this.$_annotator$.popup.startHideTimer();
3451 $JSCompiler_StaticMethods_redraw$$(this);
3452 this.$_eventsEnabled$ = $JSCompiler_alias_TRUE$$
3453};
3454function $JSCompiler_StaticMethods_topAnnotationAt$$($JSCompiler_StaticMethods_topAnnotationAt$self_annotations$$1$$, $px$$2$$, $py$$1$$) {
3455 $JSCompiler_StaticMethods_topAnnotationAt$self_annotations$$1$$ = $JSCompiler_StaticMethods_topAnnotationAt$self_annotations$$1$$.$getAnnotationsAt$($px$$2$$, $py$$1$$);
3456 if(0 < $JSCompiler_StaticMethods_topAnnotationAt$self_annotations$$1$$.length) {
3457 return $JSCompiler_StaticMethods_topAnnotationAt$self_annotations$$1$$[0]
3458 }
3459}
3460$JSCompiler_prototypeAlias$$.$getAnnotationsAt$ = function $$JSCompiler_prototypeAlias$$$$getAnnotationsAt$$($px$$3$$, $py$$2$$) {
3461 var $intersectedAnnotations$$ = [], $self$$14$$ = this;
3462 $goog$array$forEach$$(this.$_annotations$, function($annotation$$13$$) {
3463 var $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$;
3464 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ = $self$$14$$.$_shapes$[$annotorious$shape$hashCode$$($annotation$$13$$.shapes[0])];
3465 if("rect" == $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.type) {
3466 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ = $px$$3$$ < $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.x || $py$$2$$ < $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.y || $px$$3$$ > $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.x + $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.width || $py$$2$$ > $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.y +
3467 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.height ? $JSCompiler_alias_FALSE$$ : $JSCompiler_alias_TRUE$$
3468 }else {
3469 if("polygon" == $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.type) {
3470 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ = $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.geometry.points;
3471 for(var $inside$$inline_736$$ = $JSCompiler_alias_FALSE$$, $j$$inline_737$$ = $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.length - 1, $i$$inline_738$$ = 0;$i$$inline_738$$ < $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$.length;$i$$inline_738$$++) {
3472 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$i$$inline_738$$].y > $py$$2$$ != $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$j$$inline_737$$].y > $py$$2$$ && $px$$3$$ < ($JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$j$$inline_737$$].x - $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$i$$inline_738$$].x) * ($py$$2$$ - $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$i$$inline_738$$].y) /
3473 ($JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$j$$inline_737$$].y - $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$i$$inline_738$$].y) + $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$[$i$$inline_738$$].x && ($inside$$inline_736$$ = !$inside$$inline_736$$), $j$$inline_737$$ = $i$$inline_738$$
3474 }
3475 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ = $inside$$inline_736$$
3476 }else {
3477 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ = $JSCompiler_alias_FALSE$$
3478 }
3479 }
3480 $JSCompiler_inline_result$$9_points$$inline_735_shape$$inline_732$$ && $intersectedAnnotations$$.push($annotation$$13$$)
3481 });
3482 $goog$array$ARRAY_PROTOTYPE_$$.sort.call($intersectedAnnotations$$, function($a$$31$$, $b$$26$$) {
3483 var $shape_a$$ = $self$$14$$.$_shapes$[$annotorious$shape$hashCode$$($a$$31$$.shapes[0])], $shape_b$$ = $self$$14$$.$_shapes$[$annotorious$shape$hashCode$$($b$$26$$.shapes[0])];
3484 return $annotorious$shape$getSize$$($shape_a$$) - $annotorious$shape$getSize$$($shape_b$$)
3485 } || $goog$array$defaultCompare$$);
3486 return $intersectedAnnotations$$
3487};
3488function $JSCompiler_StaticMethods__draw$$($JSCompiler_StaticMethods__draw$self$$, $shape$$9$$, $highlight$$1$$) {
3489 var $selector$$4$$ = $goog$array$find$$($JSCompiler_StaticMethods__draw$self$$.$_annotator$.$getAvailableSelectors$(), function($selector$$5$$) {
3490 return $selector$$5$$.getSupportedShapeType() == $shape$$9$$.type
3491 });
3492 $selector$$4$$ ? $selector$$4$$.drawShape($JSCompiler_StaticMethods__draw$self$$.$_g2d$, $shape$$9$$, $highlight$$1$$) : console.log("WARNING unsupported shape type: " + $shape$$9$$.type)
3493}
3494function $JSCompiler_StaticMethods_redraw$$($JSCompiler_StaticMethods_redraw$self$$) {
3495 $JSCompiler_StaticMethods_redraw$self$$.$_g2d$.clearRect(0, 0, $JSCompiler_StaticMethods_redraw$self$$.$_canvas$.width, $JSCompiler_StaticMethods_redraw$self$$.$_canvas$.height);
3496 $goog$array$forEach$$($JSCompiler_StaticMethods_redraw$self$$.$_annotations$, function($annotation$$14$$) {
3497 $annotation$$14$$ != $JSCompiler_StaticMethods_redraw$self$$.$_currentAnnotation$ && $JSCompiler_StaticMethods__draw$$($JSCompiler_StaticMethods_redraw$self$$, $JSCompiler_StaticMethods_redraw$self$$.$_shapes$[$annotorious$shape$hashCode$$($annotation$$14$$.shapes[0])])
3498 });
3499 if($JSCompiler_StaticMethods_redraw$self$$.$_currentAnnotation$) {
3500 var $bbox_shape$$10$$ = $JSCompiler_StaticMethods_redraw$self$$.$_shapes$[$annotorious$shape$hashCode$$($JSCompiler_StaticMethods_redraw$self$$.$_currentAnnotation$.shapes[0])];
3501 $JSCompiler_StaticMethods__draw$$($JSCompiler_StaticMethods_redraw$self$$, $bbox_shape$$10$$, $JSCompiler_alias_TRUE$$);
3502 $bbox_shape$$10$$ = $annotorious$shape$getBoundingRect$$($bbox_shape$$10$$).geometry;
3503 $JSCompiler_StaticMethods_redraw$self$$.$_annotator$.popup.show($JSCompiler_StaticMethods_redraw$self$$.$_currentAnnotation$, new $annotorious$shape$geom$Point$$($bbox_shape$$10$$.x, $bbox_shape$$10$$.y + $bbox_shape$$10$$.height + 5))
3504 }
3505}
3506;var $annotorious$events$ui$hasTouch$$ = "ontouchstart" in window, $annotorious$events$ui$hasMouse$$ = !$annotorious$events$ui$hasTouch$$, $annotorious$events$ui$EventType$DOWN$$ = $annotorious$events$ui$hasTouch$$ ? "touchstart" : "mousedown", $annotorious$events$ui$EventType$OVER$$ = $annotorious$events$ui$hasTouch$$ ? "touchenter" : "mouseover", $annotorious$events$ui$EventType$MOVE$$ = $annotorious$events$ui$hasTouch$$ ? "touchmove" : "mousemove", $annotorious$events$ui$EventType$UP$$ = $annotorious$events$ui$hasTouch$$ ?
3507"touchend" : "mouseup", $annotorious$events$ui$EventType$OUT$$ = $annotorious$events$ui$hasTouch$$ ? "touchleave" : "mouseout";
3508function $annotorious$events$ui$sanitizeCoordinates$$($event$$18$$, $parent$$25$$) {
3509 var $points$$8$$ = $JSCompiler_alias_FALSE$$;
3510 return $points$$8$$ = !$event$$18$$.offsetX || !$event$$18$$.offsetY && $event$$18$$.$event_$.changedTouches ? {x:$event$$18$$.$event_$.changedTouches[0].clientX - $annotorious$dom$getOffset$$($parent$$25$$).left, y:$event$$18$$.$event_$.changedTouches[0].clientY - $annotorious$dom$getOffset$$($parent$$25$$).top} : {x:$event$$18$$.offsetX, y:$event$$18$$.offsetY}
3511}
3512;function $annotorious$plugins$selection$RectDragSelector$$() {
3513}
3514$JSCompiler_prototypeAlias$$ = $annotorious$plugins$selection$RectDragSelector$$.prototype;
3515$JSCompiler_prototypeAlias$$.init = function $$JSCompiler_prototypeAlias$$$init$($annotator$$27$$, $canvas$$1$$) {
3516 this.$_OUTLINE$ = "#000000";
3517 this.$_STROKE$ = "#ffffff";
3518 this.$_FILL$ = $JSCompiler_alias_VOID$$;
3519 this.$_HI_STROKE$ = "#fff000";
3520 this.$_HI_FILL$ = $JSCompiler_alias_VOID$$;
3521 this.$_canvas$ = $canvas$$1$$;
3522 this.$_annotator$ = $annotator$$27$$;
3523 this.$_g2d$ = $canvas$$1$$.getContext("2d");
3524 this.$_g2d$.lineWidth = 1;
3525 this.$_enabled$ = $JSCompiler_alias_FALSE$$
3526};
3527$JSCompiler_prototypeAlias$$.$_attachListeners$ = function $$JSCompiler_prototypeAlias$$$$_attachListeners$$() {
3528 var $self$$17$$ = this, $canvas$$2$$ = this.$_canvas$;
3529 this.$_mouseMoveListener$ = $goog$events$listen$$(this.$_canvas$, $annotorious$events$ui$EventType$MOVE$$, function($event$$19_points$$9_width$$20$$) {
3530 $event$$19_points$$9_width$$20$$ = $annotorious$events$ui$sanitizeCoordinates$$($event$$19_points$$9_width$$20$$, $canvas$$2$$);
3531 if($self$$17$$.$_enabled$) {
3532 $self$$17$$.$_opposite$ = {x:$event$$19_points$$9_width$$20$$.x, y:$event$$19_points$$9_width$$20$$.y};
3533 $self$$17$$.$_g2d$.clearRect(0, 0, $canvas$$2$$.width, $canvas$$2$$.height);
3534 var $event$$19_points$$9_width$$20$$ = $self$$17$$.$_opposite$.x - $self$$17$$.$_anchor$.x, $height$$25$$ = $self$$17$$.$_opposite$.y - $self$$17$$.$_anchor$.y;
3535 $self$$17$$.$_g2d$.strokeStyle = $self$$17$$.$_OUTLINE$;
3536 $self$$17$$.$_g2d$.strokeRect($self$$17$$.$_anchor$.x + 0.5, $self$$17$$.$_anchor$.y + 0.5, $event$$19_points$$9_width$$20$$, $height$$25$$);
3537 $self$$17$$.$_g2d$.strokeStyle = $self$$17$$.$_STROKE$;
3538 0 < $event$$19_points$$9_width$$20$$ && 0 < $height$$25$$ ? $self$$17$$.$_g2d$.strokeRect($self$$17$$.$_anchor$.x + 1.5, $self$$17$$.$_anchor$.y + 1.5, $event$$19_points$$9_width$$20$$ - 2, $height$$25$$ - 2) : 0 < $event$$19_points$$9_width$$20$$ && 0 > $height$$25$$ ? $self$$17$$.$_g2d$.strokeRect($self$$17$$.$_anchor$.x + 1.5, $self$$17$$.$_anchor$.y - 0.5, $event$$19_points$$9_width$$20$$ - 2, $height$$25$$ + 2) : 0 > $event$$19_points$$9_width$$20$$ && 0 > $height$$25$$ ? $self$$17$$.$_g2d$.strokeRect($self$$17$$.$_anchor$.x -
3539 0.5, $self$$17$$.$_anchor$.y - 0.5, $event$$19_points$$9_width$$20$$ + 2, $height$$25$$ + 2) : $self$$17$$.$_g2d$.strokeRect($self$$17$$.$_anchor$.x - 0.5, $self$$17$$.$_anchor$.y + 1.5, $event$$19_points$$9_width$$20$$ + 2, $height$$25$$ - 2)
3540 }
3541 });
3542 this.$_mouseUpListener$ = $goog$events$listen$$($canvas$$2$$, $annotorious$events$ui$EventType$UP$$, function($annotations$$2_event$$20$$) {
3543 var $points$$10$$ = $annotorious$events$ui$sanitizeCoordinates$$($annotations$$2_event$$20$$, $canvas$$2$$), $shape$$11$$ = $self$$17$$.getShape(), $annotations$$2_event$$20$$ = $annotations$$2_event$$20$$.$event_$ ? $annotations$$2_event$$20$$.$event_$ : $annotations$$2_event$$20$$;
3544 $self$$17$$.$_enabled$ = $JSCompiler_alias_FALSE$$;
3545 $shape$$11$$ ? ($self$$17$$.$_detachListeners$(), $self$$17$$.$_annotator$.fireEvent("onSelectionCompleted", {mouseEvent:$annotations$$2_event$$20$$, shape:$shape$$11$$, viewportBounds:$self$$17$$.getViewportBounds()})) : ($self$$17$$.$_annotator$.fireEvent("onSelectionCanceled"), $annotations$$2_event$$20$$ = $self$$17$$.$_annotator$.$getAnnotationsAt$($points$$10$$.x, $points$$10$$.y), 0 < $annotations$$2_event$$20$$.length && $self$$17$$.$_annotator$.$highlightAnnotation$($annotations$$2_event$$20$$[0]))
3546 })
3547};
3548$JSCompiler_prototypeAlias$$.$_detachListeners$ = function $$JSCompiler_prototypeAlias$$$$_detachListeners$$() {
3549 this.$_mouseMoveListener$ && ($goog$events$unlistenByKey$$(this.$_mouseMoveListener$), delete this.$_mouseMoveListener$);
3550 this.$_mouseUpListener$ && ($goog$events$unlistenByKey$$(this.$_mouseUpListener$), delete this.$_mouseUpListener$)
3551};
3552$JSCompiler_prototypeAlias$$.getName = $JSCompiler_returnArg$$("rect_drag");
3553$JSCompiler_prototypeAlias$$.getSupportedShapeType = $JSCompiler_returnArg$$("rect");
3554$JSCompiler_prototypeAlias$$.$setProperties$ = function $$JSCompiler_prototypeAlias$$$$setProperties$$($props$$2$$) {
3555 $props$$2$$.outline && (this.$_OUTLINE$ = $props$$2$$.outline);
3556 $props$$2$$.stroke && (this.$_STROKE$ = $props$$2$$.stroke);
3557 $props$$2$$.fill && (this.$_FILL$ = $props$$2$$.fill);
3558 $props$$2$$.hi_stroke && (this.$_HI_STROKE$ = $props$$2$$.hi_stroke);
3559 $props$$2$$.hi_fill && (this.$_HI_FILL$ = $props$$2$$.hi_fill)
3560};
3561$JSCompiler_prototypeAlias$$.startSelection = function $$JSCompiler_prototypeAlias$$$startSelection$($x$$82$$, $y$$49$$) {
3562 var $startPoint$$2$$ = {x:$x$$82$$, y:$y$$49$$};
3563 this.$_enabled$ = $JSCompiler_alias_TRUE$$;
3564 this.$_attachListeners$($startPoint$$2$$);
3565 this.$_anchor$ = new $annotorious$shape$geom$Point$$($x$$82$$, $y$$49$$);
3566 this.$_annotator$.fireEvent("onSelectionStarted", {offsetX:$x$$82$$, offsetY:$y$$49$$});
3567 $goog$style$setStyle$$(document.body, "-webkit-user-select", "none")
3568};
3569$JSCompiler_prototypeAlias$$.stopSelection = function $$JSCompiler_prototypeAlias$$$stopSelection$() {
3570 this.$_detachListeners$();
3571 this.$_g2d$.clearRect(0, 0, this.$_canvas$.width, this.$_canvas$.height);
3572 $goog$style$setStyle$$(document.body, "-webkit-user-select", "auto");
3573 delete this.$_opposite$
3574};
3575$JSCompiler_prototypeAlias$$.getShape = function $$JSCompiler_prototypeAlias$$$getShape$() {
3576 if(this.$_opposite$ && 3 < Math.abs(this.$_opposite$.x - this.$_anchor$.x) && 3 < Math.abs(this.$_opposite$.y - this.$_anchor$.y)) {
3577 var $item_opposite_viewportBounds$$ = this.getViewportBounds(), $item_anchor$$ = this.$_annotator$.$toItemCoordinates$({x:$item_opposite_viewportBounds$$.left, y:$item_opposite_viewportBounds$$.top}), $item_opposite_viewportBounds$$ = this.$_annotator$.$toItemCoordinates$({x:$item_opposite_viewportBounds$$.right - 1, y:$item_opposite_viewportBounds$$.bottom - 1});
3578 return new $annotorious$shape$Shape$$("rect", new $annotorious$shape$geom$Rectangle$$($item_anchor$$.x, $item_anchor$$.y, $item_opposite_viewportBounds$$.x - $item_anchor$$.x, $item_opposite_viewportBounds$$.y - $item_anchor$$.y))
3579 }
3580};
3581$JSCompiler_prototypeAlias$$.getViewportBounds = function $$JSCompiler_prototypeAlias$$$getViewportBounds$() {
3582 var $right$$12$$, $left$$14$$;
3583 this.$_opposite$.x > this.$_anchor$.x ? ($right$$12$$ = this.$_opposite$.x, $left$$14$$ = this.$_anchor$.x) : ($right$$12$$ = this.$_anchor$.x, $left$$14$$ = this.$_opposite$.x);
3584 var $top$$12$$, $bottom$$8$$;
3585 this.$_opposite$.y > this.$_anchor$.y ? ($top$$12$$ = this.$_anchor$.y, $bottom$$8$$ = this.$_opposite$.y) : ($top$$12$$ = this.$_opposite$.y, $bottom$$8$$ = this.$_anchor$.y);
3586 return{top:$top$$12$$, right:$right$$12$$, bottom:$bottom$$8$$, left:$left$$14$$}
3587};
3588$JSCompiler_prototypeAlias$$.drawShape = function $$JSCompiler_prototypeAlias$$$drawShape$($g2d$$, $geom$$1_shape$$12$$, $highlight$$2_stroke$$) {
3589 var $fill$$;
3590 "rect" == $geom$$1_shape$$12$$.type && ($highlight$$2_stroke$$ ? ($g2d$$.lineWidth = 1.2, $highlight$$2_stroke$$ = this.$_HI_STROKE$, $fill$$ = this.$_HI_FILL$) : ($g2d$$.lineWidth = 1, $highlight$$2_stroke$$ = this.$_STROKE$, $fill$$ = this.$_FILL$), $geom$$1_shape$$12$$ = $geom$$1_shape$$12$$.geometry, $g2d$$.strokeStyle = this.$_OUTLINE$, $g2d$$.strokeRect($geom$$1_shape$$12$$.x + 0.5, $geom$$1_shape$$12$$.y + 0.5, $geom$$1_shape$$12$$.width + 1, $geom$$1_shape$$12$$.height + 1), $g2d$$.strokeStyle =
3591 $highlight$$2_stroke$$, $g2d$$.strokeRect($geom$$1_shape$$12$$.x + 1.5, $geom$$1_shape$$12$$.y + 1.5, $geom$$1_shape$$12$$.width - 1, $geom$$1_shape$$12$$.height - 1), $fill$$ && ($g2d$$.fillStyle = $fill$$, $g2d$$.fillRect($geom$$1_shape$$12$$.x + 1.5, $geom$$1_shape$$12$$.y + 1.5, $geom$$1_shape$$12$$.width - 1, $geom$$1_shape$$12$$.height - 1)))
3592};
3593function $annotorious$templates$image$canvas$$($opt_data$$5$$) {
3594 return'<canvas class="annotorious-item annotorious-opacity-fade" style="position:absolute; top:0px; left:0px; width:' + $soy$$0$0escapeHtml$$($opt_data$$5$$.width) + "px; height:" + $soy$$0$0escapeHtml$$($opt_data$$5$$.height) + 'px; z-index:0" width="' + $soy$$0$0escapeHtml$$($opt_data$$5$$.width) + '" height="' + $soy$$0$0escapeHtml$$($opt_data$$5$$.height) + '"></canvas>'
3595}
3596function $annotorious$templates$image$hint$$($opt_data$$6$$) {
3597 return'<div class="annotorious-hint" style="white-space:nowrap; position:absolute; top:0px; left:0px; pointer-events:none;"><div class="annotorious-hint-msg annotorious-opacity-fade">' + $soy$$0$0escapeHtml$$($opt_data$$6$$.$msg$) + '</div><div class="annotorious-hint-icon" style="pointer-events:auto"></div></div>'
3598}
3599;function $annotorious$mediatypes$image$ImageAnnotator$$($item$$6$$, $opt_popup$$) {
3600 function $transferMargin$$inline_745$$($direction$$inline_748$$, $value$$inline_749$$) {
3601 $goog$style$setStyle$$($annotationLayer$$inline_744$$, "margin-" + $direction$$inline_748$$, $value$$inline_749$$ + "px");
3602 $goog$style$setStyle$$($item$$6$$, "margin-" + $direction$$inline_748$$, 0);
3603 $goog$style$setStyle$$($item$$6$$, "padding-" + $direction$$inline_748$$, 0)
3604 }
3605 this.$_image$ = $item$$6$$;
3606 this.$_original_bufferspace$ = {padding:$item$$6$$.style.padding, margin:$item$$6$$.style.margin};
3607 this.$_eventBroker$ = new $annotorious$events$EventBroker$$;
3608 this.$_selectors$ = [];
3609 this.$_selectionEnabled$ = $JSCompiler_alias_TRUE$$;
3610 this.element = $goog$dom$createDom$$("div", "annotorious-annotationlayer");
3611 $goog$style$setStyle$$(this.element, "position", "relative");
3612 $goog$style$setStyle$$(this.element, "display", "inline-block");
3613 var $annotationLayer$$inline_744$$ = this.element, $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$ = $goog$style$getBox_$$($item$$6$$, "margin"), $padding$$inline_747$$ = $goog$style$getBox_$$($item$$6$$, "padding");
3614 (0 != $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.top || 0 != $padding$$inline_747$$.top) && $transferMargin$$inline_745$$("top", $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.top + $padding$$inline_747$$.top);
3615 (0 != $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.right || 0 != $padding$$inline_747$$.right) && $transferMargin$$inline_745$$("right", $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.right + $padding$$inline_747$$.right);
3616 (0 != $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.bottom || 0 != $padding$$inline_747$$.bottom) && $transferMargin$$inline_745$$("bottom", $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.bottom + $padding$$inline_747$$.bottom);
3617 (0 != $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.left || 0 != $padding$$inline_747$$.left) && $transferMargin$$inline_745$$("left", $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.left + $padding$$inline_747$$.left);
3618 ($default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$ = $item$$6$$.parentNode) && $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.replaceChild(this.element, $item$$6$$);
3619 this.element.appendChild($item$$6$$);
3620 $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$ = $goog$style$getBounds$$($item$$6$$);
3621 this.$_viewCanvas$ = $goog$soy$renderAsElement$$($annotorious$templates$image$canvas$$, {width:$default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.width, height:$default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.height});
3622 $annotorious$events$ui$hasMouse$$ && $goog$dom$classes$add$$(this.$_viewCanvas$, "annotorious-item-unfocus");
3623 this.element.appendChild(this.$_viewCanvas$);
3624 this.$_editCanvas$ = $goog$soy$renderAsElement$$($annotorious$templates$image$canvas$$, {width:$default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.width, height:$default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.height});
3625 $annotorious$events$ui$hasMouse$$ && $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_FALSE$$);
3626 this.element.appendChild(this.$_editCanvas$);
3627 this.popup = $opt_popup$$ ? $opt_popup$$ : new $annotorious$Popup$$(this);
3628 $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$ = new $annotorious$plugins$selection$RectDragSelector$$;
3629 $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$.init(this, this.$_editCanvas$);
3630 this.$_selectors$.push($default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$);
3631 this.$_currentSelector$ = $default_selector_img_bounds_margin$$inline_746_parent$$inline_753$$;
3632 this.editor = new $annotorious$Editor$$(this);
3633 this.$_viewer$ = new $annotorious$mediatypes$image$Viewer$$(this.$_viewCanvas$, this);
3634 this.$_hint$ = new $annotorious$Hint$$(this, this.element);
3635 var $self$$18$$ = this;
3636 $annotorious$events$ui$hasMouse$$ && ($goog$events$listen$$(this.element, $annotorious$events$ui$EventType$OVER$$, function($event$$21_relatedTarget$$1$$) {
3637 $event$$21_relatedTarget$$1$$ = $event$$21_relatedTarget$$1$$.relatedTarget;
3638 if(!$event$$21_relatedTarget$$1$$ || !$goog$dom$contains$$($self$$18$$.element, $event$$21_relatedTarget$$1$$)) {
3639 $self$$18$$.$_eventBroker$.fireEvent("onMouseOverItem"), $goog$dom$classes$addRemove$$($self$$18$$.$_viewCanvas$, "annotorious-item-unfocus", "annotorious-item-focus")
3640 }
3641 }), $goog$events$listen$$(this.element, $annotorious$events$ui$EventType$OUT$$, function($event$$22_relatedTarget$$2$$) {
3642 $event$$22_relatedTarget$$2$$ = $event$$22_relatedTarget$$2$$.relatedTarget;
3643 if(!$event$$22_relatedTarget$$2$$ || !$goog$dom$contains$$($self$$18$$.element, $event$$22_relatedTarget$$2$$)) {
3644 $self$$18$$.$_eventBroker$.fireEvent("onMouseOutOfItem"), $goog$dom$classes$addRemove$$($self$$18$$.$_viewCanvas$, "annotorious-item-focus", "annotorious-item-unfocus")
3645 }
3646 }));
3647 var $activeCanvas$$ = $annotorious$events$ui$hasTouch$$ ? this.$_editCanvas$ : this.$_viewCanvas$;
3648 $goog$events$listen$$($activeCanvas$$, $annotorious$events$ui$EventType$DOWN$$, function($annotations$$3_coords_event$$23$$) {
3649 $annotations$$3_coords_event$$23$$ = $annotorious$events$ui$sanitizeCoordinates$$($annotations$$3_coords_event$$23$$, $activeCanvas$$);
3650 $self$$18$$.$_viewer$.$highlightAnnotation$($JSCompiler_alias_VOID$$);
3651 $self$$18$$.$_selectionEnabled$ ? ($goog$style$showElement$$($self$$18$$.$_editCanvas$, $JSCompiler_alias_TRUE$$), $self$$18$$.$_currentSelector$.startSelection($annotations$$3_coords_event$$23$$.x, $annotations$$3_coords_event$$23$$.y)) : ($annotations$$3_coords_event$$23$$ = $self$$18$$.$_viewer$.$getAnnotationsAt$($annotations$$3_coords_event$$23$$.x, $annotations$$3_coords_event$$23$$.y), 0 < $annotations$$3_coords_event$$23$$.length && $self$$18$$.$_viewer$.$highlightAnnotation$($annotations$$3_coords_event$$23$$[0]))
3652 });
3653 this.$_eventBroker$.$addHandler$("onSelectionCompleted", function($event$$24$$) {
3654 var $bounds$$ = $event$$24$$.viewportBounds;
3655 $self$$18$$.editor.setPosition(new $annotorious$shape$geom$Point$$($bounds$$.left + $self$$18$$.$_image$.offsetLeft, $bounds$$.bottom + 4 + $self$$18$$.$_image$.offsetTop));
3656 $self$$18$$.editor.open($JSCompiler_alias_VOID$$, $event$$24$$)
3657 });
3658 this.$_eventBroker$.$addHandler$("onSelectionCanceled", function() {
3659 $annotorious$events$ui$hasMouse$$ && $goog$style$showElement$$($self$$18$$.$_editCanvas$, $JSCompiler_alias_FALSE$$);
3660 $self$$18$$.$_currentSelector$.stopSelection()
3661 })
3662}
3663$JSCompiler_prototypeAlias$$ = $annotorious$mediatypes$image$ImageAnnotator$$.prototype;
3664$JSCompiler_prototypeAlias$$.$activateSelector$ = $JSCompiler_emptyFn$$();
3665$JSCompiler_prototypeAlias$$.$addAnnotation$ = function $$JSCompiler_prototypeAlias$$$$addAnnotation$$($annotation$$15$$, $opt_replace$$3$$) {
3666 this.$_viewer$.$addAnnotation$($annotation$$15$$, $opt_replace$$3$$)
3667};
3668$JSCompiler_prototypeAlias$$.$addHandler$ = function $$JSCompiler_prototypeAlias$$$$addHandler$$($type$$84$$, $handler$$12$$) {
3669 this.$_eventBroker$.$addHandler$($type$$84$$, $handler$$12$$)
3670};
3671$JSCompiler_prototypeAlias$$.$addSelector$ = function $$JSCompiler_prototypeAlias$$$$addSelector$$($selector$$6$$) {
3672 $selector$$6$$.init(this, this.$_editCanvas$);
3673 this.$_selectors$.push($selector$$6$$)
3674};
3675$JSCompiler_prototypeAlias$$.$destroy$ = function $$JSCompiler_prototypeAlias$$$$destroy$$() {
3676 var $img$$2$$ = this.$_image$;
3677 $img$$2$$.style.margin = this.$_original_bufferspace$.margin;
3678 $img$$2$$.style.padding = this.$_original_bufferspace$.padding;
3679 var $oldNode$$inline_765$$ = this.element, $parent$$inline_766$$ = $oldNode$$inline_765$$.parentNode;
3680 $parent$$inline_766$$ && $parent$$inline_766$$.replaceChild($img$$2$$, $oldNode$$inline_765$$)
3681};
3682$JSCompiler_prototypeAlias$$.$editAnnotation$ = function $$JSCompiler_prototypeAlias$$$$editAnnotation$$($annotation$$16$$) {
3683 this.$_viewer$.$removeAnnotation$($annotation$$16$$);
3684 var $anchor$$1_bounds$$1_selector$$7$$ = $goog$array$find$$(this.$_selectors$, function($selector$$8$$) {
3685 return $selector$$8$$.getSupportedShapeType() == $annotation$$16$$.shapes[0].type
3686 });
3687 if($anchor$$1_bounds$$1_selector$$7$$) {
3688 $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_TRUE$$);
3689 this.$_viewer$.$highlightAnnotation$($JSCompiler_alias_VOID$$);
3690 var $g2d$$1$$ = this.$_editCanvas$.getContext("2d"), $shape$$13_viewportShape$$1$$ = $annotation$$16$$.shapes[0], $self$$19$$ = this, $shape$$13_viewportShape$$1$$ = "pixel" == $shape$$13_viewportShape$$1$$.units ? $shape$$13_viewportShape$$1$$ : $annotorious$shape$transform$$($shape$$13_viewportShape$$1$$, function($xy$$4$$) {
3691 return $self$$19$$.$fromItemCoordinates$($xy$$4$$)
3692 });
3693 $anchor$$1_bounds$$1_selector$$7$$.drawShape($g2d$$1$$, $shape$$13_viewportShape$$1$$)
3694 }
3695 $anchor$$1_bounds$$1_selector$$7$$ = $annotorious$shape$getBoundingRect$$($annotation$$16$$.shapes[0]).geometry;
3696 $anchor$$1_bounds$$1_selector$$7$$ = "pixel" == $annotation$$16$$.shapes[0].units ? new $annotorious$shape$geom$Point$$($anchor$$1_bounds$$1_selector$$7$$.x, $anchor$$1_bounds$$1_selector$$7$$.y + $anchor$$1_bounds$$1_selector$$7$$.height) : this.$fromItemCoordinates$(new $annotorious$shape$geom$Point$$($anchor$$1_bounds$$1_selector$$7$$.x, $anchor$$1_bounds$$1_selector$$7$$.y + $anchor$$1_bounds$$1_selector$$7$$.height));
3697 this.editor.setPosition(new $annotorious$shape$geom$Point$$($anchor$$1_bounds$$1_selector$$7$$.x + this.$_image$.offsetLeft, $anchor$$1_bounds$$1_selector$$7$$.y + 4 + this.$_image$.offsetTop));
3698 this.editor.open($annotation$$16$$)
3699};
3700$JSCompiler_prototypeAlias$$.fireEvent = function $$JSCompiler_prototypeAlias$$$fireEvent$($type$$85$$, $event$$25$$) {
3701 return this.$_eventBroker$.fireEvent($type$$85$$, $event$$25$$)
3702};
3703$JSCompiler_prototypeAlias$$.$fromItemCoordinates$ = function $$JSCompiler_prototypeAlias$$$$fromItemCoordinates$$($xy$$5$$) {
3704 var $imgSize$$ = $goog$style$getSize$$(this.$_image$);
3705 return{x:$xy$$5$$.x * $imgSize$$.width, y:$xy$$5$$.y * $imgSize$$.height}
3706};
3707$JSCompiler_prototypeAlias$$.$getActiveSelector$ = $JSCompiler_get$$("$_currentSelector$");
3708$JSCompiler_prototypeAlias$$.$getAnnotations$ = function $$JSCompiler_prototypeAlias$$$$getAnnotations$$() {
3709 return this.$_viewer$.$getAnnotations$()
3710};
3711$JSCompiler_prototypeAlias$$.$getAnnotationsAt$ = function $$JSCompiler_prototypeAlias$$$$getAnnotationsAt$$($cx$$, $cy$$) {
3712 return $goog$array$toArray$$(this.$_viewer$.$getAnnotationsAt$($cx$$, $cy$$))
3713};
3714$JSCompiler_prototypeAlias$$.$getAvailableSelectors$ = $JSCompiler_get$$("$_selectors$");
3715$JSCompiler_prototypeAlias$$.getItem = function $$JSCompiler_prototypeAlias$$$getItem$() {
3716 return{src:$annotorious$mediatypes$image$ImageAnnotator$getItemURL$$(this.$_image$)}
3717};
3718function $annotorious$mediatypes$image$ImageAnnotator$getItemURL$$($item$$7$$) {
3719 var $src$$22$$ = $item$$7$$.getAttribute("data-original");
3720 return $src$$22$$ ? $src$$22$$ : $item$$7$$.src
3721}
3722$JSCompiler_prototypeAlias$$.$hideAnnotations$ = function $$JSCompiler_prototypeAlias$$$$hideAnnotations$$() {
3723 $goog$style$showElement$$(this.$_viewCanvas$, $JSCompiler_alias_FALSE$$)
3724};
3725$JSCompiler_prototypeAlias$$.$hideSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$hideSelectionWidget$$() {
3726 this.$_selectionEnabled$ = $JSCompiler_alias_FALSE$$;
3727 this.$_hint$ && (this.$_hint$.$destroy$(), delete this.$_hint$)
3728};
3729$JSCompiler_prototypeAlias$$.$highlightAnnotation$ = function $$JSCompiler_prototypeAlias$$$$highlightAnnotation$$($annotation$$17$$) {
3730 this.$_viewer$.$highlightAnnotation$($annotation$$17$$)
3731};
3732$JSCompiler_prototypeAlias$$.$removeAnnotation$ = function $$JSCompiler_prototypeAlias$$$$removeAnnotation$$($annotation$$18$$) {
3733 this.$_viewer$.$removeAnnotation$($annotation$$18$$)
3734};
3735$JSCompiler_prototypeAlias$$.$removeHandler$ = function $$JSCompiler_prototypeAlias$$$$removeHandler$$($type$$86$$, $handler$$13$$) {
3736 this.$_eventBroker$.$removeHandler$($type$$86$$, $handler$$13$$)
3737};
3738$JSCompiler_prototypeAlias$$.$setCurrentSelector$ = function $$JSCompiler_prototypeAlias$$$$setCurrentSelector$$($selector$$9$$) {
3739 (this.$_currentSelector$ = $goog$array$find$$(this.$_selectors$, function($sel$$) {
3740 return $sel$$.getName() == $selector$$9$$
3741 })) || console.log('WARNING: selector "' + $selector$$9$$ + '" not available')
3742};
3743$JSCompiler_prototypeAlias$$.$setProperties$ = function $$JSCompiler_prototypeAlias$$$$setProperties$$($props$$3$$) {
3744 $goog$array$forEach$$(this.$_selectors$, function($selector$$10$$) {
3745 $selector$$10$$.$setProperties$($props$$3$$)
3746 });
3747 $JSCompiler_StaticMethods_redraw$$(this.$_viewer$)
3748};
3749$JSCompiler_prototypeAlias$$.$showAnnotations$ = function $$JSCompiler_prototypeAlias$$$$showAnnotations$$() {
3750 $goog$style$showElement$$(this.$_viewCanvas$, $JSCompiler_alias_TRUE$$)
3751};
3752$JSCompiler_prototypeAlias$$.$showSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$showSelectionWidget$$() {
3753 this.$_selectionEnabled$ = $JSCompiler_alias_TRUE$$;
3754 this.$_hint$ || (this.$_hint$ = new $annotorious$Hint$$(this, this.element))
3755};
3756$JSCompiler_prototypeAlias$$.stopSelection = function $$JSCompiler_prototypeAlias$$$stopSelection$($opt_original_annotation$$) {
3757 $annotorious$events$ui$hasMouse$$ && $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_FALSE$$);
3758 this.$_currentSelector$.stopSelection();
3759 $opt_original_annotation$$ && this.$_viewer$.$addAnnotation$($opt_original_annotation$$)
3760};
3761$JSCompiler_prototypeAlias$$.$toItemCoordinates$ = function $$JSCompiler_prototypeAlias$$$$toItemCoordinates$$($xy$$6$$) {
3762 var $imgSize$$1$$ = $goog$style$getSize$$(this.$_image$);
3763 return{x:$xy$$6$$.x / $imgSize$$1$$.width, y:$xy$$6$$.y / $imgSize$$1$$.height}
3764};
3765$annotorious$mediatypes$image$ImageAnnotator$$.prototype.addSelector = $annotorious$mediatypes$image$ImageAnnotator$$.prototype.$addSelector$;
3766$annotorious$mediatypes$image$ImageAnnotator$$.prototype.fireEvent = $annotorious$mediatypes$image$ImageAnnotator$$.prototype.fireEvent;
3767$annotorious$mediatypes$image$ImageAnnotator$$.prototype.setCurrentSelector = $annotorious$mediatypes$image$ImageAnnotator$$.prototype.$setCurrentSelector$;
3768$annotorious$mediatypes$image$ImageAnnotator$$.prototype.toItemCoordinates = $annotorious$mediatypes$image$ImageAnnotator$$.prototype.$toItemCoordinates$;
3769function $annotorious$mediatypes$image$ImageModule$$() {
3770 $JSCompiler_StaticMethods__initFields$$(this, function() {
3771 return $query$$inline_154$$("img.annotatable", document)
3772 })
3773}
3774$goog$inherits$$($annotorious$mediatypes$image$ImageModule$$, $annotorious$mediatypes$Module$$);
3775$annotorious$mediatypes$image$ImageModule$$.prototype.$getItemURL$ = function $$annotorious$mediatypes$image$ImageModule$$$$$getItemURL$$($item$$8$$) {
3776 return $annotorious$mediatypes$image$ImageAnnotator$getItemURL$$($item$$8$$)
3777};
3778$annotorious$mediatypes$image$ImageModule$$.prototype.$newAnnotator$ = function $$annotorious$mediatypes$image$ImageModule$$$$$newAnnotator$$($item$$9$$) {
3779 return new $annotorious$mediatypes$image$ImageAnnotator$$($item$$9$$)
3780};
3781$annotorious$mediatypes$image$ImageModule$$.prototype.$supports$ = function $$annotorious$mediatypes$image$ImageModule$$$$$supports$$($item$$10$$) {
3782 return $goog$dom$isElement$$($item$$10$$) ? "IMG" == $item$$10$$.tagName : $JSCompiler_alias_FALSE$$
3783};
3784function $annotorious$templates$openlayers$secondaryHint$$($opt_data$$7$$) {
3785 return'<div class="annotorious-opacity-fade" style="white-space:nowrap; position:absolute; pointer-events:none; top:80px; width:100%; text-align:center;"><div class="annotorious-ol-hint" style="width: 400px; margin:0px auto;">' + $soy$$0$0escapeHtml$$($opt_data$$7$$.$msg$) + "</dvi></div>"
3786}
3787;function $annotorious$mediatypes$openlayers$Viewer$$($map$$10$$, $annotator$$28$$) {
3788 this.$_map$ = $map$$10$$;
3789 this.$_map_bounds$ = $goog$style$getBounds$$($annotator$$28$$.element);
3790 this.$_popup$ = $annotator$$28$$.popup;
3791 $goog$style$setStyle$$(this.$_popup$.element, "z-index", 99E3);
3792 this.$_overlays$ = [];
3793 this.$_boxesLayer$ = new OpenLayers.Layer.Boxes("Annotorious");
3794 this.$_map$.addLayer(this.$_boxesLayer$);
3795 var $self$$20$$ = this;
3796 this.$_map$.events.register("move", this.$_map$, function() {
3797 $self$$20$$.$_currentlyHighlightedOverlay$ && $JSCompiler_StaticMethods__place_popup$$($self$$20$$)
3798 });
3799 $annotator$$28$$.$addHandler$("beforePopupHide", function() {
3800 $self$$20$$.$_lastHoveredOverlay$ == $self$$20$$.$_currentlyHighlightedOverlay$ ? $self$$20$$.$_popup$.clearHideTimer() : $JSCompiler_StaticMethods__updateHighlight$$($self$$20$$, $self$$20$$.$_lastHoveredOverlay$, $self$$20$$.$_currentlyHighlightedOverlay$)
3801 })
3802}
3803function $JSCompiler_StaticMethods__place_popup$$($JSCompiler_StaticMethods__place_popup$self$$) {
3804 var $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$ = $JSCompiler_StaticMethods__place_popup$self$$.$_currentlyHighlightedOverlay$.$marker$.div, $annotation_dim_popup_bounds$$ = $goog$style$getBounds$$($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$), $JSCompiler_object_inline_left_3_annotation_pos$$ = $goog$style$getRelativePosition$$($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$, $JSCompiler_StaticMethods__place_popup$self$$.$_map$.div), $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$ =
3805 $JSCompiler_object_inline_left_3_annotation_pos$$.y, $JSCompiler_object_inline_left_3_annotation_pos$$ = $JSCompiler_object_inline_left_3_annotation_pos$$.x, $JSCompiler_object_inline_width_4$$ = $annotation_dim_popup_bounds$$.width, $JSCompiler_object_inline_height_5$$ = $annotation_dim_popup_bounds$$.height, $annotation_dim_popup_bounds$$ = $goog$style$getBounds$$($JSCompiler_StaticMethods__place_popup$self$$.$_popup$.element), $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$ = {y:$JSCompiler_object_inline_top_2_annotation_div_popup_pos$$ +
3806 $JSCompiler_object_inline_height_5$$ + 5};
3807 $JSCompiler_object_inline_left_3_annotation_pos$$ + $annotation_dim_popup_bounds$$.width > $JSCompiler_StaticMethods__place_popup$self$$.$_map_bounds$.width ? ($goog$dom$classes$addRemove$$($JSCompiler_StaticMethods__place_popup$self$$.$_popup$.element, "top-left", "top-right"), $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x = $JSCompiler_object_inline_left_3_annotation_pos$$ + $JSCompiler_object_inline_width_4$$ - $annotation_dim_popup_bounds$$.width) : ($goog$dom$classes$addRemove$$($JSCompiler_StaticMethods__place_popup$self$$.$_popup$.element,
3808 "top-right", "top-left"), $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x = $JSCompiler_object_inline_left_3_annotation_pos$$);
3809 0 > $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x && ($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x = 0);
3810 $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x + $annotation_dim_popup_bounds$$.width > $JSCompiler_StaticMethods__place_popup$self$$.$_map_bounds$.width && ($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.x = $JSCompiler_StaticMethods__place_popup$self$$.$_map_bounds$.width - $annotation_dim_popup_bounds$$.width);
3811 $JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.y + $annotation_dim_popup_bounds$$.height > $JSCompiler_StaticMethods__place_popup$self$$.$_map_bounds$.height && ($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$.y = $JSCompiler_StaticMethods__place_popup$self$$.$_map_bounds$.height - $annotation_dim_popup_bounds$$.height);
3812 $JSCompiler_StaticMethods__place_popup$self$$.$_popup$.setPosition($JSCompiler_object_inline_top_2_annotation_div_popup_pos$$)
3813}
3814function $JSCompiler_StaticMethods__updateHighlight$$($JSCompiler_StaticMethods__updateHighlight$self$$, $new_highlight$$, $previous_highlight$$) {
3815 $new_highlight$$ ? ($goog$style$getRelativePosition$$($new_highlight$$.$marker$.div, $JSCompiler_StaticMethods__updateHighlight$self$$.$_map$.div), $goog$string$toCamelCase$$("height"), $goog$style$setStyle$$($new_highlight$$.$inner$, "border-color", "#fff000"), $JSCompiler_StaticMethods__updateHighlight$self$$.$_currentlyHighlightedOverlay$ = $new_highlight$$, $JSCompiler_StaticMethods__updateHighlight$self$$.$_popup$.setAnnotation($new_highlight$$.$annotation$), $JSCompiler_StaticMethods__place_popup$$($JSCompiler_StaticMethods__updateHighlight$self$$),
3816 $JSCompiler_StaticMethods__updateHighlight$self$$.$_popup$.show()) : delete $JSCompiler_StaticMethods__updateHighlight$self$$.$_currentlyHighlightedOverlay$;
3817 $previous_highlight$$ && $goog$style$setStyle$$($previous_highlight$$.$inner$, "border-color", "#fff")
3818}
3819$annotorious$mediatypes$openlayers$Viewer$$.prototype.$addAnnotation$ = function $$annotorious$mediatypes$openlayers$Viewer$$$$$addAnnotation$$($annotation$$20$$) {
3820 var $geometry$$1_marker$$ = $annotation$$20$$.shapes[0].geometry, $geometry$$1_marker$$ = new OpenLayers.Marker.Box(new OpenLayers.Bounds($geometry$$1_marker$$.x, $geometry$$1_marker$$.y, $geometry$$1_marker$$.x + $geometry$$1_marker$$.width, $geometry$$1_marker$$.y + $geometry$$1_marker$$.height));
3821 $goog$dom$classes$add$$($geometry$$1_marker$$.div, "annotorious-ol-boxmarker-outer");
3822 $goog$style$setStyle$$($geometry$$1_marker$$.div, "border", $JSCompiler_alias_NULL$$);
3823 var $inner$$ = $goog$dom$createDom$$("div", "annotorious-ol-boxmarker-inner");
3824 $goog$style$setSize$$($inner$$, "100%", "100%");
3825 $geometry$$1_marker$$.div.appendChild($inner$$);
3826 var $overlay$$ = {$annotation$:$annotation$$20$$, $marker$:$geometry$$1_marker$$, $inner$:$inner$$}, $self$$21$$ = this;
3827 $goog$events$listen$$($inner$$, "mouseover", function() {
3828 $self$$21$$.$_currentlyHighlightedOverlay$ || $JSCompiler_StaticMethods__updateHighlight$$($self$$21$$, $overlay$$);
3829 $self$$21$$.$_lastHoveredOverlay$ = $overlay$$
3830 });
3831 $goog$events$listen$$($inner$$, "mouseout", function() {
3832 delete $self$$21$$.$_lastHoveredOverlay$;
3833 $self$$21$$.$_popup$.startHideTimer()
3834 });
3835 this.$_overlays$.push($overlay$$);
3836 $goog$array$ARRAY_PROTOTYPE_$$.sort.call(this.$_overlays$, function($a$$32$$, $b$$27$$) {
3837 return $annotorious$shape$getSize$$($b$$27$$.$annotation$.shapes[0]) - $annotorious$shape$getSize$$($a$$32$$.$annotation$.shapes[0])
3838 } || $goog$array$defaultCompare$$);
3839 var $zIndex$$ = 1E4;
3840 $goog$array$forEach$$(this.$_overlays$, function($overlay$$1$$) {
3841 $goog$style$setStyle$$($overlay$$1$$.$marker$.div, "z-index", $zIndex$$);
3842 $zIndex$$++
3843 });
3844 this.$_boxesLayer$.addMarker($geometry$$1_marker$$)
3845};
3846$annotorious$mediatypes$openlayers$Viewer$$.prototype.$removeAnnotation$ = function $$annotorious$mediatypes$openlayers$Viewer$$$$$removeAnnotation$$($annotation$$21$$) {
3847 var $overlay$$2$$ = $goog$array$find$$(this.$_overlays$, function($overlay$$3$$) {
3848 return $overlay$$3$$.$annotation$ == $annotation$$21$$
3849 });
3850 $overlay$$2$$ && ($goog$array$remove$$(this.$_overlays$, $overlay$$2$$), this.$_boxesLayer$.removeMarker($overlay$$2$$.$marker$))
3851};
3852$annotorious$mediatypes$openlayers$Viewer$$.prototype.$getAnnotations$ = $JSCompiler_emptyFn$$();
3853$annotorious$mediatypes$openlayers$Viewer$$.prototype.$highlightAnnotation$ = function $$annotorious$mediatypes$openlayers$Viewer$$$$$highlightAnnotation$$($opt_annotation$$2$$) {
3854 $opt_annotation$$2$$ || this.$_popup$.startHideTimer()
3855};
3856function $annotorious$mediatypes$openlayers$OpenLayersAnnotator$$($map$$11$$) {
3857 function $updateCanvasSize$$() {
3858 var $width$$21$$ = parseInt($goog$style$getComputedStyle$$($self$$22$$.element, "width"), 10), $height$$27$$ = parseInt($goog$style$getComputedStyle$$($self$$22$$.element, "height"), 10);
3859 $goog$style$setSize$$($self$$22$$.$_editCanvas$, $width$$21$$, $height$$27$$);
3860 $self$$22$$.$_editCanvas$.width = $width$$21$$;
3861 $self$$22$$.$_editCanvas$.height = $height$$27$$
3862 }
3863 this.$_map$ = $map$$11$$;
3864 this.element = $map$$11$$.div;
3865 var $pos$$8$$ = this.element.style[$goog$string$toCamelCase$$("position")] || "";
3866 "absolute" != $pos$$8$$ && "relative" != $pos$$8$$ && $goog$style$setStyle$$(this.element, "position", "relative");
3867 this.$_eventBroker$ = new $annotorious$events$EventBroker$$;
3868 this.$_secondaryHint$ = $goog$soy$renderAsElement$$($annotorious$templates$openlayers$secondaryHint$$, {$msg$:"Click and Drag"});
3869 $goog$style$setStyle$$(this.$_secondaryHint$, "z-index", 9998);
3870 $goog$style$setOpacity$$(this.$_secondaryHint$, 0);
3871 this.element.appendChild(this.$_secondaryHint$);
3872 this.popup = new $annotorious$Popup$$(this);
3873 this.$_viewer$ = new $annotorious$mediatypes$openlayers$Viewer$$($map$$11$$, this);
3874 this.$_editCanvas$ = $goog$soy$renderAsElement$$($annotorious$templates$image$canvas$$, {width:"0", height:"0"});
3875 $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_FALSE$$);
3876 $goog$style$setStyle$$(this.$_editCanvas$, "position", "absolute");
3877 $goog$style$setStyle$$(this.$_editCanvas$, "top", "0px");
3878 $goog$style$setStyle$$(this.$_editCanvas$, "z-index", 9999);
3879 this.element.appendChild(this.$_editCanvas$);
3880 var $self$$22$$ = this;
3881 $updateCanvasSize$$();
3882 this.$_selector$ = new $annotorious$plugins$selection$RectDragSelector$$;
3883 this.$_selector$.init(this, this.$_editCanvas$);
3884 this.$_stop_selection_callback$ = $JSCompiler_alias_VOID$$;
3885 this.editor = new $annotorious$Editor$$(this);
3886 $goog$style$setStyle$$(this.editor.element, "z-index", 1E4);
3887 window.addEventListener ? window.addEventListener("resize", $updateCanvasSize$$, $JSCompiler_alias_FALSE$$) : window.attachEvent && window.attachEvent("onresize", $updateCanvasSize$$);
3888 $goog$events$listen$$(this.element, "mouseover", function($event$$28_relatedTarget$$3$$) {
3889 $event$$28_relatedTarget$$3$$ = $event$$28_relatedTarget$$3$$.relatedTarget;
3890 (!$event$$28_relatedTarget$$3$$ || !$goog$dom$contains$$($self$$22$$.element, $event$$28_relatedTarget$$3$$)) && $self$$22$$.$_eventBroker$.fireEvent("onMouseOverItem")
3891 });
3892 $goog$events$listen$$(this.element, "mouseout", function($event$$29_relatedTarget$$4$$) {
3893 $event$$29_relatedTarget$$4$$ = $event$$29_relatedTarget$$4$$.relatedTarget;
3894 (!$event$$29_relatedTarget$$4$$ || !$goog$dom$contains$$($self$$22$$.element, $event$$29_relatedTarget$$4$$)) && $self$$22$$.$_eventBroker$.fireEvent("onMouseOutOfItem")
3895 });
3896 $goog$events$listen$$(this.$_editCanvas$, "mousedown", function($event$$30$$) {
3897 var $offset$$18$$ = $goog$style$getClientPosition$$($self$$22$$.element);
3898 $self$$22$$.$_selector$.startSelection($event$$30$$.clientX - $offset$$18$$.x, $event$$30$$.clientY - $offset$$18$$.y)
3899 });
3900 this.$_eventBroker$.$addHandler$("onSelectionCompleted", function($bounds$$2_event$$31$$) {
3901 $goog$style$setStyle$$($self$$22$$.$_editCanvas$, "pointer-events", "none");
3902 $bounds$$2_event$$31$$ = $bounds$$2_event$$31$$.viewportBounds;
3903 $self$$22$$.editor.setPosition(new $annotorious$shape$geom$Point$$($bounds$$2_event$$31$$.left, $bounds$$2_event$$31$$.bottom + 4));
3904 $self$$22$$.editor.open()
3905 });
3906 this.$_eventBroker$.$addHandler$("onSelectionCanceled", function() {
3907 $self$$22$$.stopSelection()
3908 })
3909}
3910$JSCompiler_prototypeAlias$$ = $annotorious$mediatypes$openlayers$OpenLayersAnnotator$$.prototype;
3911$JSCompiler_prototypeAlias$$.$showSelectionWidget$ = $JSCompiler_emptyFn$$();
3912$JSCompiler_prototypeAlias$$.$hideSelectionWidget$ = $JSCompiler_emptyFn$$();
3913$JSCompiler_prototypeAlias$$.$activateSelector$ = function $$JSCompiler_prototypeAlias$$$$activateSelector$$($callback$$36$$) {
3914 $goog$style$setStyle$$(this.$_editCanvas$, "pointer-events", "auto");
3915 var $self$$23$$ = this;
3916 $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_TRUE$$);
3917 $goog$style$setOpacity$$(this.$_secondaryHint$, 0.8);
3918 window.setTimeout(function() {
3919 $goog$style$setOpacity$$($self$$23$$.$_secondaryHint$, 0)
3920 }, 2E3);
3921 $callback$$36$$ && (this.$_stop_selection_callback$ = $callback$$36$$)
3922};
3923$JSCompiler_prototypeAlias$$.$editAnnotation$ = function $$JSCompiler_prototypeAlias$$$$editAnnotation$$($annotation$$22$$) {
3924 this.$_viewer$.$removeAnnotation$($annotation$$22$$);
3925 var $selector$$11_viewportBounds$$1$$ = this.$_selector$, $self$$24$$ = this;
3926 if($selector$$11_viewportBounds$$1$$) {
3927 $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_TRUE$$);
3928 this.$_viewer$.$highlightAnnotation$($JSCompiler_alias_VOID$$);
3929 var $g2d$$2$$ = this.$_editCanvas$.getContext("2d"), $viewportShape$$2$$ = $annotorious$shape$transform$$($annotation$$22$$.shapes[0], function($xy$$7$$) {
3930 return $self$$24$$.$fromItemCoordinates$($xy$$7$$)
3931 });
3932 $selector$$11_viewportBounds$$1$$.drawShape($g2d$$2$$, $viewportShape$$2$$);
3933 $selector$$11_viewportBounds$$1$$ = $annotorious$shape$getBoundingRect$$($viewportShape$$2$$).geometry;
3934 this.editor.setPosition(new $annotorious$shape$geom$Point$$($selector$$11_viewportBounds$$1$$.x + this.element.offsetLeft, $selector$$11_viewportBounds$$1$$.y + $selector$$11_viewportBounds$$1$$.height + 4 + this.element.offsetTop));
3935 this.editor.open($annotation$$22$$)
3936 }
3937};
3938$JSCompiler_prototypeAlias$$.$addAnnotation$ = function $$JSCompiler_prototypeAlias$$$$addAnnotation$$($annotation$$23$$) {
3939 this.$_viewer$.$addAnnotation$($annotation$$23$$)
3940};
3941$JSCompiler_prototypeAlias$$.$addHandler$ = function $$JSCompiler_prototypeAlias$$$$addHandler$$($type$$88$$, $handler$$14$$) {
3942 this.$_eventBroker$.$addHandler$($type$$88$$, $handler$$14$$)
3943};
3944$JSCompiler_prototypeAlias$$.$addSelector$ = $JSCompiler_emptyFn$$();
3945$JSCompiler_prototypeAlias$$.fireEvent = function $$JSCompiler_prototypeAlias$$$fireEvent$($type$$89$$, $event$$33$$) {
3946 return this.$_eventBroker$.fireEvent($type$$89$$, $event$$33$$)
3947};
3948$JSCompiler_prototypeAlias$$.$fromItemCoordinates$ = function $$JSCompiler_prototypeAlias$$$$fromItemCoordinates$$($itemCoords_pxCoords$$) {
3949 $itemCoords_pxCoords$$ = this.$_map$.getViewPortPxFromLonLat(new OpenLayers.LonLat($itemCoords_pxCoords$$.x, $itemCoords_pxCoords$$.y));
3950 return{x:$itemCoords_pxCoords$$.x, y:$itemCoords_pxCoords$$.y}
3951};
3952$JSCompiler_prototypeAlias$$.$getActiveSelector$ = $JSCompiler_get$$("$_selector$");
3953$JSCompiler_prototypeAlias$$.$getAnnotations$ = $JSCompiler_emptyFn$$();
3954$JSCompiler_prototypeAlias$$.$getAvailableSelectors$ = $JSCompiler_emptyFn$$();
3955$JSCompiler_prototypeAlias$$.getItem = function $$JSCompiler_prototypeAlias$$$getItem$() {
3956 return{src:"map://openlayers/something"}
3957};
3958$JSCompiler_prototypeAlias$$.$highlightAnnotation$ = function $$JSCompiler_prototypeAlias$$$$highlightAnnotation$$($annotation$$24$$) {
3959 this.$_viewer$.$highlightAnnotation$($annotation$$24$$)
3960};
3961$JSCompiler_prototypeAlias$$.$removeAnnotation$ = function $$JSCompiler_prototypeAlias$$$$removeAnnotation$$($annotation$$25$$) {
3962 this.$_viewer$.$removeAnnotation$($annotation$$25$$)
3963};
3964$JSCompiler_prototypeAlias$$.$removeHandler$ = function $$JSCompiler_prototypeAlias$$$$removeHandler$$($type$$90$$, $handler$$15$$) {
3965 this.$_eventBroker$.$removeHandler$($type$$90$$, $handler$$15$$)
3966};
3967$JSCompiler_prototypeAlias$$.$setActiveSelector$ = $JSCompiler_emptyFn$$();
3968$JSCompiler_prototypeAlias$$.stopSelection = function $$JSCompiler_prototypeAlias$$$stopSelection$($original_annotation$$) {
3969 $goog$style$showElement$$(this.$_editCanvas$, $JSCompiler_alias_FALSE$$);
3970 this.$_stop_selection_callback$ && (this.$_stop_selection_callback$(), delete this.$_stop_selection_callback$);
3971 this.$_selector$.stopSelection();
3972 $original_annotation$$ && this.$_viewer$.$addAnnotation$($original_annotation$$)
3973};
3974$JSCompiler_prototypeAlias$$.$toItemCoordinates$ = function $$JSCompiler_prototypeAlias$$$$toItemCoordinates$$($itemCoords$$1_xy$$8$$) {
3975 $itemCoords$$1_xy$$8$$ = this.$_map$.getLonLatFromPixel(new OpenLayers.Pixel($itemCoords$$1_xy$$8$$.x, $itemCoords$$1_xy$$8$$.y));
3976 return{x:$itemCoords$$1_xy$$8$$.lon, y:$itemCoords$$1_xy$$8$$.lat}
3977};
3978function $annotorious$mediatypes$openlayers$OpenLayersModule$$() {
3979 $JSCompiler_StaticMethods__initFields$$(this)
3980}
3981$goog$inherits$$($annotorious$mediatypes$openlayers$OpenLayersModule$$, $annotorious$mediatypes$Module$$);
3982$annotorious$mediatypes$openlayers$OpenLayersModule$$.prototype.$getItemURL$ = $JSCompiler_returnArg$$("map://openlayers/something");
3983$annotorious$mediatypes$openlayers$OpenLayersModule$$.prototype.$newAnnotator$ = function $$annotorious$mediatypes$openlayers$OpenLayersModule$$$$$newAnnotator$$($item$$12$$) {
3984 return new $annotorious$mediatypes$openlayers$OpenLayersAnnotator$$($item$$12$$)
3985};
3986$annotorious$mediatypes$openlayers$OpenLayersModule$$.prototype.$supports$ = function $$annotorious$mediatypes$openlayers$OpenLayersModule$$$$$supports$$($item$$13$$) {
3987 return $item$$13$$ instanceof OpenLayers.Map
3988};
3989function $annotorious$Annotorious$$() {
3990 function $fn$$inline_783$$() {
3991 $goog$array$forEach$$($self$$25$$.$_modules$, function($module$$) {
3992 $module$$.init()
3993 });
3994 $goog$array$forEach$$($self$$25$$.$_plugins$, function($plugin$$3$$) {
3995 $plugin$$3$$.initPlugin && $plugin$$3$$.initPlugin($self$$25$$);
3996 $goog$array$forEach$$($self$$25$$.$_modules$, function($module$$1$$) {
3997 $module$$1$$.$addPlugin$($plugin$$3$$)
3998 })
3999 })
4000 }
4001 this.$_modules$ = [new $annotorious$mediatypes$image$ImageModule$$];
4002 window.OpenLayers && this.$_modules$.push(new $annotorious$mediatypes$openlayers$OpenLayersModule$$);
4003 this.$_plugins$ = [];
4004 var $self$$25$$ = this;
4005 window.addEventListener ? window.addEventListener("load", $fn$$inline_783$$, $JSCompiler_alias_FALSE$$) : window.attachEvent && window.attachEvent("onload", $fn$$inline_783$$)
4006}
4007function $JSCompiler_StaticMethods__getModuleForItemSrc$$($JSCompiler_StaticMethods__getModuleForItemSrc$self$$, $item_src$$1$$) {
4008 return $goog$array$find$$($JSCompiler_StaticMethods__getModuleForItemSrc$self$$.$_modules$, function($module$$2$$) {
4009 return $JSCompiler_StaticMethods_annotatesItem$$($module$$2$$, $item_src$$1$$)
4010 })
4011}
4012$JSCompiler_prototypeAlias$$ = $annotorious$Annotorious$$.prototype;
4013$JSCompiler_prototypeAlias$$.$activateSelector$ = function $$JSCompiler_prototypeAlias$$$$activateSelector$$($opt_item_url_or_callback$$1$$, $opt_callback$$6$$) {
4014 var $item_url$$6$$ = $JSCompiler_alias_VOID$$, $callback$$37$$ = $JSCompiler_alias_VOID$$;
4015 $goog$isString$$($opt_item_url_or_callback$$1$$) ? ($item_url$$6$$ = $opt_item_url_or_callback$$1$$, $callback$$37$$ = $opt_callback$$6$$) : $goog$isFunction$$($opt_item_url_or_callback$$1$$) && ($callback$$37$$ = $opt_item_url_or_callback$$1$$);
4016 if($item_url$$6$$) {
4017 var $module$$3$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $item_url$$6$$);
4018 $module$$3$$ && $module$$3$$.$activateSelector$($item_url$$6$$, $callback$$37$$)
4019 }else {
4020 $goog$array$forEach$$(this.$_modules$, function($module$$4$$) {
4021 $module$$4$$.$activateSelector$($callback$$37$$)
4022 })
4023 }
4024};
4025$JSCompiler_prototypeAlias$$.$addAnnotation$ = function $$JSCompiler_prototypeAlias$$$$addAnnotation$$($annotation$$26$$, $opt_replace$$4$$) {
4026 var $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$;
4027 $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$ = $annotation$$26$$.src;
4028 if(!(0 < $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$.indexOf("://"))) {
4029 var $link$$inline_786$$ = document.createElement("a");
4030 $link$$inline_786$$.href = $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$;
4031 $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$ = $link$$inline_786$$.protocol + "//" + $link$$inline_786$$.host + $link$$inline_786$$.pathname
4032 }
4033 $annotation$$26$$.src = $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$;
4034 ($JSCompiler_inline_result$$24_module$$5_url$$inline_785$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $annotation$$26$$.src)) && $JSCompiler_inline_result$$24_module$$5_url$$inline_785$$.$addAnnotation$($annotation$$26$$, $opt_replace$$4$$)
4035};
4036$JSCompiler_prototypeAlias$$.$addHandler$ = function $$JSCompiler_prototypeAlias$$$$addHandler$$($type$$91$$, $handler$$16$$) {
4037 $goog$array$forEach$$(this.$_modules$, function($module$$6$$) {
4038 $module$$6$$.$addHandler$($type$$91$$, $handler$$16$$)
4039 })
4040};
4041$JSCompiler_prototypeAlias$$.$addPlugin$ = function $$JSCompiler_prototypeAlias$$$$addPlugin$$($plugin_name$$, $opt_config_options$$) {
4042 try {
4043 var $plugin$$4$$ = new window.annotorious.plugin[$plugin_name$$]($opt_config_options$$);
4044 "complete" == document.readyState ? ($plugin$$4$$.initPlugin && $plugin$$4$$.initPlugin(this), $goog$array$forEach$$(this.$_modules$, function($module$$7$$) {
4045 $module$$7$$.$addPlugin$($plugin$$4$$)
4046 })) : this.$_plugins$.push($plugin$$4$$)
4047 }catch($error$$3$$) {
4048 console.log("Could not load plugin: " + $plugin_name$$)
4049 }
4050};
4051$JSCompiler_prototypeAlias$$.$destroy$ = function $$JSCompiler_prototypeAlias$$$$destroy$$($opt_item_url$$8$$) {
4052 if($opt_item_url$$8$$) {
4053 var $module$$8$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$8$$);
4054 $module$$8$$ && $module$$8$$.$destroy$($opt_item_url$$8$$)
4055 }else {
4056 $goog$array$forEach$$(this.$_modules$, function($module$$9$$) {
4057 $module$$9$$.$destroy$()
4058 })
4059 }
4060};
4061$JSCompiler_prototypeAlias$$.$getActiveSelector$ = function $$JSCompiler_prototypeAlias$$$$getActiveSelector$$($item_url$$7$$) {
4062 var $module$$10$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $item_url$$7$$);
4063 if($module$$10$$) {
4064 return $module$$10$$.$getActiveSelector$($item_url$$7$$)
4065 }
4066};
4067$JSCompiler_prototypeAlias$$.$getAnnotations$ = function $$JSCompiler_prototypeAlias$$$$getAnnotations$$($opt_item_url$$9$$) {
4068 if($opt_item_url$$9$$) {
4069 var $module$$11$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$9$$);
4070 return $module$$11$$ ? $module$$11$$.$getAnnotations$($opt_item_url$$9$$) : []
4071 }
4072 var $annotations$$4$$ = [];
4073 $goog$array$forEach$$(this.$_modules$, function($module$$12$$) {
4074 $goog$array$extend$$($annotations$$4$$, $module$$12$$.$getAnnotations$())
4075 });
4076 return $annotations$$4$$
4077};
4078$JSCompiler_prototypeAlias$$.$getAvailableSelectors$ = function $$JSCompiler_prototypeAlias$$$$getAvailableSelectors$$($item_url$$8$$) {
4079 var $module$$13$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $item_url$$8$$);
4080 return $module$$13$$ ? $module$$13$$.$getAvailableSelectors$($item_url$$8$$) : []
4081};
4082$JSCompiler_prototypeAlias$$.$hideAnnotations$ = function $$JSCompiler_prototypeAlias$$$$hideAnnotations$$($opt_item_url$$10$$) {
4083 if($opt_item_url$$10$$) {
4084 var $module$$14$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$10$$);
4085 $module$$14$$ && $module$$14$$.$hideAnnotations$($opt_item_url$$10$$)
4086 }else {
4087 $goog$array$forEach$$(this.$_modules$, function($module$$15$$) {
4088 $module$$15$$.$hideAnnotations$()
4089 })
4090 }
4091};
4092$JSCompiler_prototypeAlias$$.$hideSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$hideSelectionWidget$$($opt_item_url$$11$$) {
4093 if($opt_item_url$$11$$) {
4094 var $module$$16$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$11$$);
4095 $module$$16$$ && $module$$16$$.$hideSelectionWidget$($opt_item_url$$11$$)
4096 }else {
4097 $goog$array$forEach$$(this.$_modules$, function($module$$17$$) {
4098 $module$$17$$.$hideSelectionWidget$()
4099 })
4100 }
4101};
4102$JSCompiler_prototypeAlias$$.$highlightAnnotation$ = function $$JSCompiler_prototypeAlias$$$$highlightAnnotation$$($annotation$$27$$) {
4103 if($annotation$$27$$) {
4104 var $module$$18$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $annotation$$27$$.src);
4105 $module$$18$$ && $module$$18$$.$highlightAnnotation$($annotation$$27$$)
4106 }else {
4107 $goog$array$forEach$$(this.$_modules$, function($module$$19$$) {
4108 $module$$19$$.$highlightAnnotation$()
4109 })
4110 }
4111};
4112$JSCompiler_prototypeAlias$$.$makeAnnotatable$ = function $$JSCompiler_prototypeAlias$$$$makeAnnotatable$$($item$$14$$) {
4113 var $module$$20$$ = $goog$array$find$$(this.$_modules$, function($module$$21$$) {
4114 return $module$$21$$.$supports$($item$$14$$)
4115 });
4116 $module$$20$$ ? $module$$20$$.$makeAnnotatable$($item$$14$$) : $JSCompiler_alias_THROW$$("Error: Annotorious does not support this media type in the current version or build configuration.")
4117};
4118$JSCompiler_prototypeAlias$$.$removeAll$ = function $$JSCompiler_prototypeAlias$$$$removeAll$$($opt_item_url$$12$$) {
4119 var $self$$26$$ = this;
4120 $goog$array$forEach$$(this.$getAnnotations$($opt_item_url$$12$$), function($annotation$$28$$) {
4121 $self$$26$$.$removeAnnotation$($annotation$$28$$)
4122 })
4123};
4124$JSCompiler_prototypeAlias$$.$removeAnnotation$ = function $$JSCompiler_prototypeAlias$$$$removeAnnotation$$($annotation$$29$$) {
4125 var $module$$22$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $annotation$$29$$.src);
4126 $module$$22$$ && $module$$22$$.$removeAnnotation$($annotation$$29$$)
4127};
4128$JSCompiler_prototypeAlias$$.reset = function $$JSCompiler_prototypeAlias$$$reset$() {
4129 $goog$array$forEach$$(this.$_modules$, function($module$$23$$) {
4130 $module$$23$$.$destroy$();
4131 $module$$23$$.init()
4132 })
4133};
4134$JSCompiler_prototypeAlias$$.$setActiveSelector$ = function $$JSCompiler_prototypeAlias$$$$setActiveSelector$$($item_url$$9$$, $selector$$14$$) {
4135 var $module$$24$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $item_url$$9$$);
4136 $module$$24$$ && $module$$24$$.$setActiveSelector$($item_url$$9$$, $selector$$14$$)
4137};
4138$JSCompiler_prototypeAlias$$.$setProperties$ = function $$JSCompiler_prototypeAlias$$$$setProperties$$($props$$4$$) {
4139 $goog$array$forEach$$(this.$_modules$, function($module$$25$$) {
4140 $module$$25$$.$setProperties$($props$$4$$)
4141 })
4142};
4143$JSCompiler_prototypeAlias$$.$setSelectionEnabled$ = function $$JSCompiler_prototypeAlias$$$$setSelectionEnabled$$($enabled$$2$$) {
4144 $enabled$$2$$ ? this.$showSelectionWidget$($JSCompiler_alias_VOID$$) : this.$hideSelectionWidget$($JSCompiler_alias_VOID$$)
4145};
4146$JSCompiler_prototypeAlias$$.$showAnnotations$ = function $$JSCompiler_prototypeAlias$$$$showAnnotations$$($opt_item_url$$13$$) {
4147 if($opt_item_url$$13$$) {
4148 var $module$$26$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$13$$);
4149 $module$$26$$ && $module$$26$$.$showAnnotations$($opt_item_url$$13$$)
4150 }else {
4151 $goog$array$forEach$$(this.$_modules$, function($module$$27$$) {
4152 $module$$27$$.$showAnnotations$()
4153 })
4154 }
4155};
4156$JSCompiler_prototypeAlias$$.$showSelectionWidget$ = function $$JSCompiler_prototypeAlias$$$$showSelectionWidget$$($opt_item_url$$14$$) {
4157 if($opt_item_url$$14$$) {
4158 var $module$$28$$ = $JSCompiler_StaticMethods__getModuleForItemSrc$$(this, $opt_item_url$$14$$);
4159 $module$$28$$ && $module$$28$$.$showSelectionWidget$($opt_item_url$$14$$)
4160 }else {
4161 $goog$array$forEach$$(this.$_modules$, function($module$$29$$) {
4162 $module$$29$$.$showSelectionWidget$()
4163 })
4164 }
4165};
4166window.anno = new $annotorious$Annotorious$$;
4167$annotorious$Annotorious$$.prototype.activateSelector = $annotorious$Annotorious$$.prototype.$activateSelector$;
4168$annotorious$Annotorious$$.prototype.addAnnotation = $annotorious$Annotorious$$.prototype.$addAnnotation$;
4169$annotorious$Annotorious$$.prototype.addHandler = $annotorious$Annotorious$$.prototype.$addHandler$;
4170$annotorious$Annotorious$$.prototype.addPlugin = $annotorious$Annotorious$$.prototype.$addPlugin$;
4171$annotorious$Annotorious$$.prototype.destroy = $annotorious$Annotorious$$.prototype.$destroy$;
4172$annotorious$Annotorious$$.prototype.getActiveSelector = $annotorious$Annotorious$$.prototype.$getActiveSelector$;
4173$annotorious$Annotorious$$.prototype.getAnnotations = $annotorious$Annotorious$$.prototype.$getAnnotations$;
4174$annotorious$Annotorious$$.prototype.getAvailableSelectors = $annotorious$Annotorious$$.prototype.$getAvailableSelectors$;
4175$annotorious$Annotorious$$.prototype.hideAnnotations = $annotorious$Annotorious$$.prototype.$hideAnnotations$;
4176$annotorious$Annotorious$$.prototype.hideSelectionWidget = $annotorious$Annotorious$$.prototype.$hideSelectionWidget$;
4177$annotorious$Annotorious$$.prototype.highlightAnnotation = $annotorious$Annotorious$$.prototype.$highlightAnnotation$;
4178$annotorious$Annotorious$$.prototype.makeAnnotatable = $annotorious$Annotorious$$.prototype.$makeAnnotatable$;
4179$annotorious$Annotorious$$.prototype.removeAll = $annotorious$Annotorious$$.prototype.$removeAll$;
4180$annotorious$Annotorious$$.prototype.removeAnnotation = $annotorious$Annotorious$$.prototype.$removeAnnotation$;
4181$annotorious$Annotorious$$.prototype.reset = $annotorious$Annotorious$$.prototype.reset;
4182$annotorious$Annotorious$$.prototype.setActiveSelector = $annotorious$Annotorious$$.prototype.$setActiveSelector$;
4183$annotorious$Annotorious$$.prototype.setProperties = $annotorious$Annotorious$$.prototype.$setProperties$;
4184$annotorious$Annotorious$$.prototype.showAnnotations = $annotorious$Annotorious$$.prototype.$showAnnotations$;
4185$annotorious$Annotorious$$.prototype.showSelectionWidget = $annotorious$Annotorious$$.prototype.$showSelectionWidget$;
4186window.annotorious || (window.annotorious = {});
4187window.annotorious.plugin || (window.annotorious.plugin = {});
4188$annotorious$Annotorious$$.prototype.setSelectionEnabled = $annotorious$Annotorious$$.prototype.$setSelectionEnabled$;
  
1function g(a){throw a;}var i=void 0,j=!0,m=null,n=!1;function aa(){return function(){}}function p(a){return function(){return this[a]}}function ba(a){return function(){return a}}var r,s=this;function ca(a,b){var c=a.split("."),d=s;!(c[0]in d)&&d.execScript&&d.execScript("var "+c[0]);for(var f;c.length&&(f=c.shift());)!c.length&&da(b)?d[f]=b:d=d[f]?d[f]:d[f]={}}function ea(){}function fa(a){a.ob=function(){return a.rd?a.rd:a.rd=new a}}
2function ga(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null";
3else if("function"==b&&"undefined"==typeof a.call)return"object";return b}function da(a){return a!==i}function ha(a){return"array"==ga(a)}function ia(a){var b=ga(a);return"array"==b||"object"==b&&"number"==typeof a.length}function t(a){return"string"==typeof a}function u(a){return"function"==ga(a)}function ja(a){var b=typeof a;return"object"==b&&a!=m||"function"==b}function ka(a){return a[la]||(a[la]=++ma)}var la="closure_uid_"+Math.floor(2147483648*Math.random()).toString(36),ma=0;
4function na(a,b,c){return a.call.apply(a.bind,arguments)}function oa(a,b,c){a||g(Error());if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}}function pa(a,b,c){pa=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?na:oa;return pa.apply(m,arguments)}
5function qa(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=Array.prototype.slice.call(arguments);b.unshift.apply(b,c);return a.apply(this,b)}}var ra=Date.now||function(){return+new Date};function v(a,b){function c(){}c.prototype=b.prototype;a.G=b.prototype;a.prototype=new c;a.prototype.constructor=a};function sa(a){return a.replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")}function ta(a){if(!ua.test(a))return a;-1!=a.indexOf("&")&&(a=a.replace(va,"&amp;"));-1!=a.indexOf("<")&&(a=a.replace(wa,"&lt;"));-1!=a.indexOf(">")&&(a=a.replace(xa,"&gt;"));-1!=a.indexOf('"')&&(a=a.replace(ya,"&quot;"));return a}var va=/&/g,wa=/</g,xa=/>/g,ya=/\"/g,ua=/[&<>\"]/;function za(a){return String(a).replace(/\-([a-z])/g,function(a,c){return c.toUpperCase()})};var z=Array.prototype,Aa=z.indexOf?function(a,b,c){return z.indexOf.call(a,b,c)}:function(a,b,c){c=c==m?0:0>c?Math.max(0,a.length+c):c;if(t(a))return!t(b)||1!=b.length?-1:a.indexOf(b,c);for(;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},B=z.forEach?function(a,b,c){z.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,f=t(a)?a.split(""):a,e=0;e<d;e++)e in f&&b.call(c,f[e],e,a)},Ba=z.filter?function(a,b,c){return z.filter.call(a,b,c)}:function(a,b,c){for(var d=a.length,f=[],e=0,h=t(a)?a.split(""):
6a,k=0;k<d;k++)if(k in h){var l=h[k];b.call(c,l,k,a)&&(f[e++]=l)}return f},Ca=z.map?function(a,b,c){return z.map.call(a,b,c)}:function(a,b,c){for(var d=a.length,f=Array(d),e=t(a)?a.split(""):a,h=0;h<d;h++)h in e&&(f[h]=b.call(c,e[h],h,a));return f},Da=z.every?function(a,b,c){return z.every.call(a,b,c)}:function(a,b,c){for(var d=a.length,f=t(a)?a.split(""):a,e=0;e<d;e++)if(e in f&&!b.call(c,f[e],e,a))return n;return j};
7function Ea(a,b){var c;a:{c=a.length;for(var d=t(a)?a.split(""):a,f=0;f<c;f++)if(f in d&&b.call(i,d[f],f,a)){c=f;break a}c=-1}return 0>c?m:t(a)?a.charAt(c):a[c]}function Fa(a,b){return 0<=Aa(a,b)}function C(a,b){var c=Aa(a,b);0<=c&&z.splice.call(a,c,1)}function Ga(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]}
8function Ha(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c],f;if(ha(d)||(f=ia(d))&&d.hasOwnProperty("callee"))a.push.apply(a,d);else if(f)for(var e=a.length,h=d.length,k=0;k<h;k++)a[e+k]=d[k];else a.push(d)}}function Ia(a,b,c){return 2>=arguments.length?z.slice.call(a,b):z.slice.call(a,b,c)}function Ja(a,b){return a>b?1:a<b?-1:0};var Ka,La,Ma,Na,Oa;function Pa(){return s.navigator?s.navigator.userAgent:m}function Qa(){return s.navigator}Na=Ma=La=Ka=n;var Ra;if(Ra=Pa()){var Sa=Qa();Ka=0==Ra.indexOf("Opera");La=!Ka&&-1!=Ra.indexOf("MSIE");Ma=!Ka&&-1!=Ra.indexOf("WebKit");Na=!Ka&&!Ma&&"Gecko"==Sa.product}var D=Ka,F=La,G=Na,H=Ma,Ta=Qa();Oa=-1!=(Ta&&Ta.platform||"").indexOf("Mac");var Ua=!!Qa()&&-1!=(Qa().appVersion||"").indexOf("X11"),Va;
9a:{var Wa="",Xa;if(D&&s.opera)var Ya=s.opera.version,Wa="function"==typeof Ya?Ya():Ya;else if(G?Xa=/rv\:([^\);]+)(\)|;)/:F?Xa=/MSIE\s+([^\);]+)(\)|;)/:H&&(Xa=/WebKit\/(\S+)/),Xa)var Za=Xa.exec(Pa()),Wa=Za?Za[1]:"";if(F){var $a,ab=s.document;$a=ab?ab.documentMode:i;if($a>parseFloat(Wa)){Va=String($a);break a}}Va=Wa}var bb={};
10function I(a){var b;if(!(b=bb[a])){b=0;for(var c=sa(String(Va)).split("."),d=sa(String(a)).split("."),f=Math.max(c.length,d.length),e=0;0==b&&e<f;e++){var h=c[e]||"",k=d[e]||"",l=RegExp("(\\d*)(\\D*)","g"),q=RegExp("(\\d*)(\\D*)","g");do{var w=l.exec(h)||["","",""],y=q.exec(k)||["","",""];if(0==w[0].length&&0==y[0].length)break;b=((0==w[1].length?0:parseInt(w[1],10))<(0==y[1].length?0:parseInt(y[1],10))?-1:(0==w[1].length?0:parseInt(w[1],10))>(0==y[1].length?0:parseInt(y[1],10))?1:0)||((0==w[2].length)<
11(0==y[2].length)?-1:(0==w[2].length)>(0==y[2].length)?1:0)||(w[2]<y[2]?-1:w[2]>y[2]?1:0)}while(0==b)}b=bb[a]=0<=b}return b}var cb={};function db(a){return cb[a]||(cb[a]=F&&!!document.documentMode&&document.documentMode>=a)};var eb,fb=!F||db(9);!G&&!F||F&&db(9)||G&&I("1.9.1");F&&I("9");var gb=F||D||H;function hb(a){a=a.className;return t(a)&&a.match(/\S+/g)||[]}function ib(a,b){var c=hb(a),d=Ia(arguments,1),f=c.length+d.length;jb(c,d);a.className=c.join(" ");return c.length==f}function kb(a,b){var c=hb(a),d=Ia(arguments,1),f=lb(c,d);a.className=f.join(" ");return f.length==c.length-d.length}function jb(a,b){for(var c=0;c<b.length;c++)Fa(a,b[c])||a.push(b[c])}function lb(a,b){return Ba(a,function(a){return!Fa(b,a)})}
12function mb(a,b,c){var d=hb(a);t(b)?C(d,b):ha(b)&&(d=lb(d,b));t(c)&&!Fa(d,c)?d.push(c):ha(c)&&jb(d,c);a.className=d.join(" ")};function J(a,b){this.x=da(a)?a:0;this.y=da(b)?b:0};function nb(a,b){this.width=a;this.height=b}nb.prototype.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};nb.prototype.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};function ob(a,b){for(var c in a)b.call(i,a[c],c,a)}var pb="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function qb(a,b){for(var c,d,f=1;f<arguments.length;f++){d=arguments[f];for(c in d)a[c]=d[c];for(var e=0;e<pb.length;e++)c=pb[e],Object.prototype.hasOwnProperty.call(d,c)&&(a[c]=d[c])}};function rb(a){return a?new sb(K(a)):eb||(eb=new sb)}function tb(a,b){ob(b,function(b,d){"style"==d?a.style.cssText=b:"class"==d?a.className=b:"for"==d?a.htmlFor=b:d in ub?a.setAttribute(ub[d],b):0==d.lastIndexOf("aria-",0)||0==d.lastIndexOf("data-",0)?a.setAttribute(d,b):a[d]=b})}var ub={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",valign:"vAlign",width:"width"};
13function vb(a,b,c){var d=arguments,f=document,e=d[0],h=d[1];if(!fb&&h&&(h.name||h.type)){e=["<",e];h.name&&e.push(' name="',ta(h.name),'"');if(h.type){e.push(' type="',ta(h.type),'"');var k={};qb(k,h);delete k.type;h=k}e.push(">");e=e.join("")}e=f.createElement(e);h&&(t(h)?e.className=h:ha(h)?ib.apply(m,[e].concat(h)):tb(e,h));2<d.length&&wb(f,e,d,2);return e}
14function wb(a,b,c,d){function f(c){c&&b.appendChild(t(c)?a.createTextNode(c):c)}for(;d<c.length;d++){var e=c[d];if(ia(e)&&!(ja(e)&&0<e.nodeType)){var h;a:{if(e&&"number"==typeof e.length){if(ja(e)){h="function"==typeof e.item||"string"==typeof e.item;break a}if(u(e)){h="function"==typeof e.item;break a}}h=n}B(h?Ga(e):e,f)}else f(e)}}function xb(a){for(var b;b=a.firstChild;)a.removeChild(b)}function yb(a){a&&a.parentNode&&a.parentNode.removeChild(a)}function zb(a){return ja(a)&&1==a.nodeType}
15function Ab(a,b){if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||Boolean(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a}function K(a){return 9==a.nodeType?a:a.ownerDocument||a.document}function Bb(a){var b=a.getAttributeNode("tabindex");return b&&b.specified?(a=a.tabIndex,"number"==typeof a&&0<=a&&32768>a):n}function sb(a){this.I=a||s.document||document}r=sb.prototype;r.ed=rb;
16r.c=function(a){return t(a)?this.I.getElementById(a):a};r.Z=tb;r.createElement=function(a){return this.I.createElement(a)};r.createTextNode=function(a){return this.I.createTextNode(a)};function Cb(a){var b=a.I,a=!H?b.documentElement:b.body,b=b.parentWindow||b.defaultView;return new J(b.pageXOffset||a.scrollLeft,b.pageYOffset||a.scrollTop)}r.appendChild=function(a,b){a.appendChild(b)};r.append=function(a,b){wb(K(a),a,arguments,1)};r.contains=Ab;var Db;Db=ba(j);/*
17 Portions of this code are from the Dojo Toolkit, received by
18 The Closure Library Authors under the BSD license. All other code is
19 Copyright 2005-2009 The Closure Library Authors. All Rights Reserved.
20
21The "New" BSD License:
22
23Copyright (c) 2005-2009, The Dojo Foundation
24All rights reserved.
25
26Redistribution and use in source and binary forms, with or without
27modification, are permitted provided that the following conditions are met:
28
29 Redistributions of source code must retain the above copyright notice, this
30 list of conditions and the following disclaimer.
31 Redistributions in binary form must reproduce the above copyright notice,
32 this list of conditions and the following disclaimer in the documentation
33 and/or other materials provided with the distribution.
34 Neither the name of the Dojo Foundation nor the names of its contributors
35 may be used to endorse or promote products derived from this software
36 without specific prior written permission.
37
38THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
39ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
40WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
41DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
42FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
43DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
44SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
45CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
46OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
47OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
48*/
49function Eb(a,b){var c=b||[];a&&c.push(a);return c}var Fb=H&&"BackCompat"==document.compatMode,Gb=document.firstChild.children?"children":"childNodes",Hb=n;
50function Ib(a){function b(){0<=q&&(x.id=c(q,A).replace(/\\/g,""),q=-1);if(0<=w){var a=w==A?m:c(w,A);0>">~+".indexOf(a)?x.D=a:x.Lb=a;w=-1}0<=l&&(x.V.push(c(l+1,A).replace(/\\/g,"")),l=-1)}function c(b,c){return sa(a.slice(b,c))}for(var a=0<=">~+".indexOf(a.slice(-1))?a+" * ":a+" ",d=[],f=-1,e=-1,h=-1,k=-1,l=-1,q=-1,w=-1,y="",E="",Q,A=0,Fe=a.length,x=m,L=m;y=E,E=a.charAt(A),A<Fe;A++)if("\\"!=y)if(x||(Q=A,x={Qa:m,ua:[],xb:[],V:[],D:m,Lb:m,id:m,nc:function(){return Hb?this.Zd:this.D}},w=A),0<=f)if("]"==
51E){L.jc?L.uc=c(h||f+1,A):L.jc=c(f+1,A);if((f=L.uc)&&('"'==f.charAt(0)||"'"==f.charAt(0)))L.uc=f.slice(1,-1);x.xb.push(L);L=m;f=h=-1}else"="==E&&(h=0<="|~^$*".indexOf(y)?y:"",L.type=h+E,L.jc=c(f+1,A-h.length),h=A+1);else 0<=e?")"==E&&(0<=k&&(L.value=c(e+1,A)),k=e=-1):"#"==E?(b(),q=A+1):"."==E?(b(),l=A):":"==E?(b(),k=A):"["==E?(b(),f=A,L={}):"("==E?(0<=k&&(L={name:c(k+1,A),value:m},x.ua.push(L)),e=A):" "==E&&y!=E&&(b(),0<=k&&x.ua.push({name:c(k+1,A)}),x.vd=x.ua.length||x.xb.length||x.V.length,x.qe=
52x.Qa=c(Q,A),x.Zd=x.D=x.Lb?m:x.D||"*",x.D&&(x.D=x.D.toUpperCase()),d.length&&d[d.length-1].Lb&&(x.pd=d.pop(),x.Qa=x.pd.Qa+" "+x.Qa),d.push(x),x=m);return d}function Jb(a,b){return!a?b:!b?a:function(){return a.apply(window,arguments)&&b.apply(window,arguments)}}function Kb(a){return 1==a.nodeType}function Lb(a,b){return!a?"":"class"==b?a.className||"":"for"==b?a.htmlFor||"":"style"==b?a.style.cssText||"":(Hb?a.getAttribute(b):a.getAttribute(b,2))||""}
53var Mb={"*=":function(a,b){return function(c){return 0<=Lb(c,a).indexOf(b)}},"^=":function(a,b){return function(c){return 0==Lb(c,a).indexOf(b)}},"$=":function(a,b){return function(c){c=" "+Lb(c,a);return c.lastIndexOf(b)==c.length-b.length}},"~=":function(a,b){var c=" "+b+" ";return function(b){return 0<=(" "+Lb(b,a)+" ").indexOf(c)}},"|=":function(a,b){b=" "+b;return function(c){c=" "+Lb(c,a);return c==b||0==c.indexOf(b+"-")}},"=":function(a,b){return function(c){return Lb(c,a)==b}}},Nb="undefined"==
54typeof document.firstChild.nextElementSibling,Ob=!Nb?"nextElementSibling":"nextSibling",Pb=!Nb?"previousElementSibling":"previousSibling",Qb=Nb?Kb:Db;function Rb(a){for(;a=a[Pb];)if(Qb(a))return n;return j}function Sb(a){for(;a=a[Ob];)if(Qb(a))return n;return j}function Tb(a){var b=a.parentNode,c=0,d=b[Gb],f=a._i||-1,e=b._l||-1;if(!d)return-1;d=d.length;if(e==d&&0<=f&&0<=e)return f;b._l=d;f=-1;for(b=b.firstElementChild||b.firstChild;b;b=b[Ob])Qb(b)&&(b._i=++c,a===b&&(f=c));return f}
55function Ub(a){return!(Tb(a)%2)}function Vb(a){return Tb(a)%2}
56var Xb={checked:function(){return function(a){return a.checked||a.attributes.checked}},"first-child":function(){return Rb},"last-child":function(){return Sb},"only-child":function(){return function(a){return!Rb(a)||!Sb(a)?n:j}},empty:function(){return function(a){for(var b=a.childNodes,a=a.childNodes.length-1;0<=a;a--){var c=b[a].nodeType;if(1===c||3==c)return n}return j}},contains:function(a,b){var c=b.charAt(0);if('"'==c||"'"==c)b=b.slice(1,-1);return function(a){return 0<=a.innerHTML.indexOf(b)}},
57not:function(a,b){var c=Ib(b)[0],d={A:1};"*"!=c.D&&(d.D=1);c.V.length||(d.V=1);var f=Wb(c,d);return function(a){return!f(a)}},"nth-child":function(a,b){if("odd"==b)return Vb;if("even"==b)return Ub;if(-1!=b.indexOf("n")){var c=b.split("n",2),d=c[0]?"-"==c[0]?-1:parseInt(c[0],10):1,f=c[1]?parseInt(c[1],10):0,e=0,h=-1;0<d?0>f?f=f%d&&d+f%d:0<f&&(f>=d&&(e=f-f%d),f%=d):0>d&&(d*=-1,0<f&&(h=f,f%=d));if(0<d)return function(a){a=Tb(a);return a>=e&&(0>h||a<=h)&&a%d==f};b=f}var k=parseInt(b,10);return function(a){return Tb(a)==
58k}}},Yb=F?function(a){var b=a.toLowerCase();"class"==b&&(a="className");return function(c){return Hb?c.getAttribute(a):c[a]||c[b]}}:function(a){return function(b){return b&&b.getAttribute&&b.hasAttribute(a)}};
59function Wb(a,b){if(!a)return Db;var b=b||{},c=m;b.A||(c=Jb(c,Kb));b.D||"*"!=a.D&&(c=Jb(c,function(b){return b&&b.tagName==a.nc()}));b.V||B(a.V,function(a,b){var e=RegExp("(?:^|\\s)"+a+"(?:\\s|$)");c=Jb(c,function(a){return e.test(a.className)});c.count=b});b.ua||B(a.ua,function(a){var b=a.name;Xb[b]&&(c=Jb(c,Xb[b](b,a.value)))});b.xb||B(a.xb,function(a){var b,e=a.jc;a.type&&Mb[a.type]?b=Mb[a.type](e,a.uc):e.length&&(b=Yb(e));b&&(c=Jb(c,b))});b.id||a.id&&(c=Jb(c,function(b){return!!b&&b.id==a.id}));
60c||"default"in b||(c=Db);return c}var Zb={};
61function $b(a){var b=Zb[a.Qa];if(b)return b;var c=a.pd,c=c?c.Lb:"",d=Wb(a,{A:1}),f="*"==a.D,e=document.getElementsByClassName;if(c)if(e={A:1},f&&(e.D=1),d=Wb(a,e),"+"==c)var h=d,b=function(a,b,c){for(;a=a[Ob];)if(!Nb||Kb(a)){(!c||ac(a,c))&&h(a)&&b.push(a);break}return b};else if("~"==c)var k=d,b=function(a,b,c){for(a=a[Ob];a;){if(Qb(a)){if(c&&!ac(a,c))break;k(a)&&b.push(a)}a=a[Ob]}return b};else{if(">"==c)var l=d,l=l||Db,b=function(a,b,c){for(var d=0,f=a[Gb];a=f[d++];)Qb(a)&&((!c||ac(a,c))&&l(a,d))&&
62b.push(a);return b}}else if(a.id)d=!a.vd&&f?Db:Wb(a,{A:1,id:1}),b=function(b,c){var f=rb(b).c(a.id),e;if(e=f&&d(f))if(!(e=9==b.nodeType)){for(e=f.parentNode;e&&e!=b;)e=e.parentNode;e=!!e}if(e)return Eb(f,c)};else if(e&&/\{\s*\[native code\]\s*\}/.test(String(e))&&a.V.length&&!Fb)var d=Wb(a,{A:1,V:1,id:1}),q=a.V.join(" "),b=function(a,b){for(var c=Eb(0,b),f,e=0,h=a.getElementsByClassName(q);f=h[e++];)d(f,a)&&c.push(f);return c};else!f&&!a.vd?b=function(b,c){for(var d=Eb(0,c),f,e=0,h=b.getElementsByTagName(a.nc());f=
63h[e++];)d.push(f);return d}:(d=Wb(a,{A:1,D:1,id:1}),b=function(b,c){for(var f=Eb(0,c),e,h=0,l=b.getElementsByTagName(a.nc());e=l[h++];)d(e,b)&&f.push(e);return f});return Zb[a.Qa]=b}var bc={},cc={};function dc(a){var b=Ib(sa(a));if(1==b.length){var c=$b(b[0]);return function(a){if(a=c(a,[]))a.Kb=j;return a}}return function(a){for(var a=Eb(a),c,e,h=b.length,k,l,q=0;q<h;q++){l=[];c=b[q];e=a.length-1;0<e&&(k={},l.Kb=j);e=$b(c);for(var w=0;c=a[w];w++)e(c,l,k);if(!l.length)break;a=l}return l}}
64var ec=!!document.querySelectorAll&&(!H||I("526"));
65function fc(a,b){if(ec){var c=cc[a];if(c&&!b)return c}if(c=bc[a])return c;var c=a.charAt(0),d=-1==a.indexOf(" ");0<=a.indexOf("#")&&d&&(b=j);if(ec&&!b&&-1==">~+".indexOf(c)&&(!F||-1==a.indexOf(":"))&&!(Fb&&0<=a.indexOf("."))&&-1==a.indexOf(":contains")&&-1==a.indexOf("|=")){var f=0<=">~+".indexOf(a.charAt(a.length-1))?a+" *":a;return cc[a]=function(b){try{9==b.nodeType||d||g("");var c=b.querySelectorAll(f);F?c.Kd=j:c.Kb=j;return c}catch(e){return fc(a,j)(b)}}}var e=a.split(/\s*,\s*/);return bc[a]=
662>e.length?dc(a):function(a){for(var b=0,c=[],d;d=e[b++];)c=c.concat(dc(d)(a));return c}}var gc=0,hc=F?function(a){return Hb?a.getAttribute("_uid")||a.setAttribute("_uid",++gc)||gc:a.uniqueID}:function(a){return a._uid||(a._uid=++gc)};function ac(a,b){if(!b)return 1;var c=hc(a);return!b[c]?b[c]=1:0}
67function ic(a){if(a&&a.Kb)return a;var b=[];if(!a||!a.length)return b;a[0]&&b.push(a[0]);if(2>a.length)return b;gc++;if(F&&Hb){var c=gc+"";a[0].setAttribute("_zipIdx",c);for(var d=1,f;f=a[d];d++)a[d].getAttribute("_zipIdx")!=c&&b.push(f),f.setAttribute("_zipIdx",c)}else if(F&&a.Kd)try{for(d=1;f=a[d];d++)Kb(f)&&b.push(f)}catch(e){}else{a[0]&&(a[0]._zipIdx=gc);for(d=1;f=a[d];d++)a[d]._zipIdx!=gc&&b.push(f),f._zipIdx=gc}return b}
68function M(a,b){if(!a)return[];if(a.constructor==Array)return a;if(!t(a))return[a];if(t(b)&&(b=t(b)?document.getElementById(b):b,!b))return[];var b=b||document,c=b.ownerDocument||b.documentElement;Hb=b.contentType&&"application/xml"==b.contentType||D&&(b.doctype||"[object XMLDocument]"==c.toString())||!!c&&(F?c.xml:b.xmlVersion||c.xmlVersion);return(c=fc(a)(b))&&c.Kb?c:ic(c)}M.ua=Xb;ca("goog.dom.query",M);ca("goog.dom.query.pseudos",M.ua);var jc=!F||db(9),kc=!F||db(9),lc=F&&!I("9");!H||I("528");G&&I("1.9b")||F&&I("8")||D&&I("9.5")||H&&I("528");G&&!I("8")||F&&I("9");function mc(){0!=nc&&(this.ke=Error().stack,ka(this))}var nc=0;mc.prototype.Zc=n;function oc(a,b){this.type=a;this.currentTarget=this.target=b}r=oc.prototype;r.ta=n;r.defaultPrevented=n;r.Nb=j;r.stopPropagation=function(){this.ta=j};r.preventDefault=function(){this.defaultPrevented=j;this.Nb=n};function pc(a){a.preventDefault()};function qc(a){qc[" "](a);return a}qc[" "]=ea;function rc(a,b){a&&this.init(a,b)}v(rc,oc);var sc=[1,4,2];r=rc.prototype;r.target=m;r.relatedTarget=m;r.offsetX=0;r.offsetY=0;r.clientX=0;r.clientY=0;r.screenX=0;r.screenY=0;r.button=0;r.keyCode=0;r.charCode=0;r.ctrlKey=n;r.altKey=n;r.shiftKey=n;r.metaKey=n;r.yc=n;r.n=m;
69r.init=function(a,b){var c=this.type=a.type;oc.call(this,c);this.target=a.target||a.srcElement;this.currentTarget=b;var d=a.relatedTarget;if(d){if(G){var f;a:{try{qc(d.nodeName);f=j;break a}catch(e){}f=n}f||(d=m)}}else"mouseover"==c?d=a.fromElement:"mouseout"==c&&(d=a.toElement);this.relatedTarget=d;this.offsetX=H||a.offsetX!==i?a.offsetX:a.layerX;this.offsetY=H||a.offsetY!==i?a.offsetY:a.layerY;this.clientX=a.clientX!==i?a.clientX:a.pageX;this.clientY=a.clientY!==i?a.clientY:a.pageY;this.screenX=
70a.screenX||0;this.screenY=a.screenY||0;this.button=a.button;this.keyCode=a.keyCode||0;this.charCode=a.charCode||("keypress"==c?a.keyCode:0);this.ctrlKey=a.ctrlKey;this.altKey=a.altKey;this.shiftKey=a.shiftKey;this.metaKey=a.metaKey;this.yc=Oa?a.metaKey:a.ctrlKey;this.state=a.state;this.n=a;a.defaultPrevented&&this.preventDefault();delete this.ta};function tc(a){return(jc?0==a.n.button:"click"==a.type?j:!!(a.n.button&sc[0]))&&!(H&&Oa&&a.ctrlKey)}
71r.stopPropagation=function(){rc.G.stopPropagation.call(this);this.n.stopPropagation?this.n.stopPropagation():this.n.cancelBubble=j};r.preventDefault=function(){rc.G.preventDefault.call(this);var a=this.n;if(a.preventDefault)a.preventDefault();else if(a.returnValue=n,lc)try{if(a.ctrlKey||112<=a.keyCode&&123>=a.keyCode)a.keyCode=-1}catch(b){}};r.Ld=p("n");function uc(){}var vc=0;r=uc.prototype;r.key=0;r.va=n;r.Uc=n;r.init=function(a,b,c,d,f,e){u(a)?this.ud=j:a&&a.handleEvent&&u(a.handleEvent)?this.ud=n:g(Error("Invalid listener argument"));this.Pa=a;this.zd=b;this.src=c;this.type=d;this.capture=!!f;this.La=e;this.Uc=n;this.key=++vc;this.va=n};r.handleEvent=function(a){return this.ud?this.Pa.call(this.La||this.src,a):this.Pa.handleEvent.call(this.Pa,a)};var wc={},N={},xc={},yc={};
72function O(a,b,c,d,f){if(b){if(ha(b)){for(var e=0;e<b.length;e++)O(a,b[e],c,d,f);return m}var d=!!d,h=N;b in h||(h[b]={m:0,K:0});h=h[b];d in h||(h[d]={m:0,K:0},h.m++);var h=h[d],k=ka(a),l;h.K++;if(h[k]){l=h[k];for(e=0;e<l.length;e++)if(h=l[e],h.Pa==c&&h.La==f){if(h.va)break;return l[e].key}}else l=h[k]=[],h.m++;var q=zc,w=kc?function(a){return q.call(w.src,w.key,a)}:function(a){a=q.call(w.src,w.key,a);if(!a)return a},e=w;e.src=a;h=new uc;h.init(c,e,a,b,d,f);c=h.key;e.key=c;l.push(h);wc[c]=h;xc[k]||
73(xc[k]=[]);xc[k].push(h);a.addEventListener?(a==s||!a.Wc)&&a.addEventListener(b,e,d):a.attachEvent(b in yc?yc[b]:yc[b]="on"+b,e);return c}g(Error("Invalid event type"))}function Ac(a,b,c,d,f){if(ha(b))for(var e=0;e<b.length;e++)Ac(a,b[e],c,d,f);else if(d=!!d,a=Bc(a,b,d))for(e=0;e<a.length;e++)if(a[e].Pa==c&&a[e].capture==d&&a[e].La==f){P(a[e].key);break}}
74function P(a){if(!wc[a])return n;var b=wc[a];if(b.va)return n;var c=b.src,d=b.type,f=b.zd,e=b.capture;c.removeEventListener?(c==s||!c.Wc)&&c.removeEventListener(d,f,e):c.detachEvent&&c.detachEvent(d in yc?yc[d]:yc[d]="on"+d,f);c=ka(c);xc[c]&&(f=xc[c],C(f,b),0==f.length&&delete xc[c]);b.va=j;if(b=N[d][e][c])b.xd=j,Cc(d,e,c,b);delete wc[a];return j}
75function Cc(a,b,c,d){if(!d.Gb&&d.xd){for(var f=0,e=0;f<d.length;f++)d[f].va?d[f].zd.src=m:(f!=e&&(d[e]=d[f]),e++);d.length=e;d.xd=n;0==e&&(delete N[a][b][c],N[a][b].m--,0==N[a][b].m&&(delete N[a][b],N[a].m--),0==N[a].m&&delete N[a])}}function Bc(a,b,c){var d=N;return b in d&&(d=d[b],c in d&&(d=d[c],a=ka(a),d[a]))?d[a]:m}
76function Dc(a,b,c,d,f){var e=1,b=ka(b);if(a[b]){a.K--;a=a[b];a.Gb?a.Gb++:a.Gb=1;try{for(var h=a.length,k=0;k<h;k++){var l=a[k];l&&!l.va&&(e&=Ec(l,f)!==n)}}finally{a.Gb--,Cc(c,d,b,a)}}return Boolean(e)}function Ec(a,b){a.Uc&&P(a.key);return a.handleEvent(b)}
77function zc(a,b){if(!wc[a])return j;var c=wc[a],d=c.type,f=N;if(!(d in f))return j;var f=f[d],e,h;if(!kc){var k;if(!(k=b))a:{k=["window","event"];for(var l=s;e=k.shift();)if(l[e]!=m)l=l[e];else{k=m;break a}k=l}e=k;k=j in f;l=n in f;if(k){if(0>e.keyCode||e.returnValue!=i)return j;a:{var q=n;if(0==e.keyCode)try{e.keyCode=-1;break a}catch(w){q=j}if(q||e.returnValue==i)e.returnValue=j}}q=new rc;q.init(e,this);e=j;try{if(k){for(var y=[],E=q.currentTarget;E;E=E.parentNode)y.push(E);h=f[j];h.K=h.m;for(var Q=
78y.length-1;!q.ta&&0<=Q&&h.K;Q--)q.currentTarget=y[Q],e&=Dc(h,y[Q],d,j,q);if(l){h=f[n];h.K=h.m;for(Q=0;!q.ta&&Q<y.length&&h.K;Q++)q.currentTarget=y[Q],e&=Dc(h,y[Q],d,n,q)}}else e=Ec(c,q)}finally{y&&(y.length=0)}return e}d=new rc(b,this);return e=Ec(c,d)};function Fc(a){mc.call(this);this.md=a;this.h=[]}v(Fc,mc);var Gc=[];function R(a,b,c,d,f){ha(c)||(Gc[0]=c,c=Gc);for(var e=0;e<c.length;e++){var h=O(b,c[e],d||a,f||n,a.md||a);a.h.push(h)}return a}function Hc(a,b,c,d,f,e){if(ha(c))for(var h=0;h<c.length;h++)Hc(a,b,c[h],d,f,e);else{a:{d=d||a;e=e||a.md||a;f=!!f;if(b=Bc(b,c,f))for(c=0;c<b.length;c++)if(!b[c].va&&b[c].Pa==d&&b[c].capture==f&&b[c].La==e){b=b[c];break a}b=m}b&&(b=b.key,P(b),C(a.h,b))}return a}
79Fc.prototype.Mb=function(){B(this.h,P);this.h.length=0};Fc.prototype.handleEvent=function(){g(Error("EventHandler.handleEvent not implemented"))};function Ic(){mc.call(this)}v(Ic,mc);r=Ic.prototype;r.Wc=j;r.xc=m;r.Cc=function(a){this.xc=a};r.addEventListener=function(a,b,c,d){O(this,a,b,c,d)};r.removeEventListener=function(a,b,c,d){Ac(this,a,b,c,d)};
80r.dispatchEvent=function(a){var b=a.type||a,c=N;if(b in c){if(t(a))a=new oc(a,this);else if(a instanceof oc)a.target=a.target||this;else{var d=a,a=new oc(b,this);qb(a,d)}var d=1,f,c=c[b],b=j in c,e;if(b){f=[];for(e=this;e;e=e.xc)f.push(e);e=c[j];e.K=e.m;for(var h=f.length-1;!a.ta&&0<=h&&e.K;h--)a.currentTarget=f[h],d&=Dc(e,f[h],a.type,j,a)&&a.Nb!=n}if(n in c)if(e=c[n],e.K=e.m,b)for(h=0;!a.ta&&h<f.length&&e.K;h++)a.currentTarget=f[h],d&=Dc(e,f[h],a.type,n,a)&&a.Nb!=n;else for(f=this;!a.ta&&f&&e.K;f=
81f.xc)a.currentTarget=f,d&=Dc(e,f,a.type,n,a)&&a.Nb!=n;a=Boolean(d)}else a=j;return a};function Jc(a,b,c,d){this.top=a;this.right=b;this.bottom=c;this.left=d}Jc.prototype.contains=function(a){return!this||!a?n:a instanceof Jc?a.left>=this.left&&a.right<=this.right&&a.top>=this.top&&a.bottom<=this.bottom:a.x>=this.left&&a.x<=this.right&&a.y>=this.top&&a.y<=this.bottom};function Kc(a,b,c,d){this.left=a;this.top=b;this.width=c;this.height=d}Kc.prototype.contains=function(a){return a instanceof Kc?this.left<=a.left&&this.left+this.width>=a.left+a.width&&this.top<=a.top&&this.top+this.height>=a.top+a.height:a.x>=this.left&&a.x<=this.left+this.width&&a.y>=this.top&&a.y<=this.top+this.height};function S(a,b,c){t(b)?Lc(a,c,b):ob(b,qa(Lc,a))}function Lc(a,b,c){a.style[za(c)]=b}function T(a,b){var c=K(a);return c.defaultView&&c.defaultView.getComputedStyle&&(c=c.defaultView.getComputedStyle(a,m))?c[b]||c.getPropertyValue(b)||"":""}function Mc(a,b){return a.currentStyle?a.currentStyle[b]:m}function Nc(a,b){return T(a,b)||Mc(a,b)||a.style&&a.style[b]}function Oc(a,b,c){var d,f=G&&(Oa||Ua)&&I("1.9");b instanceof J?(d=b.x,b=b.y):(d=b,b=c);a.style.left=Pc(d,f);a.style.top=Pc(b,f)}
82function Qc(a){var b=a.getBoundingClientRect();F&&(a=a.ownerDocument,b.left-=a.documentElement.clientLeft+a.body.clientLeft,b.top-=a.documentElement.clientTop+a.body.clientTop);return b}
83function Rc(a){if(F&&!db(8))return a.offsetParent;for(var b=K(a),c=Nc(a,"position"),d="fixed"==c||"absolute"==c,a=a.parentNode;a&&a!=b;a=a.parentNode)if(c=Nc(a,"position"),d=d&&"static"==c&&a!=b.documentElement&&a!=b.body,!d&&(a.scrollWidth>a.clientWidth||a.scrollHeight>a.clientHeight||"fixed"==c||"absolute"==c||"relative"==c))return a;return m}
84function Sc(a){var b,c=K(a),d=Nc(a,"position"),f=G&&c.getBoxObjectFor&&!a.getBoundingClientRect&&"absolute"==d&&(b=c.getBoxObjectFor(a))&&(0>b.screenX||0>b.screenY),e=new J(0,0),h;b=c?K(c):document;if(h=F)if(h=!db(9))rb(b),h=n;h=h?b.body:b.documentElement;if(a==h)return e;if(a.getBoundingClientRect)b=Qc(a),a=Cb(rb(c)),e.x=b.left+a.x,e.y=b.top+a.y;else if(c.getBoxObjectFor&&!f)b=c.getBoxObjectFor(a),a=c.getBoxObjectFor(h),e.x=b.screenX-a.screenX,e.y=b.screenY-a.screenY;else{f=a;do{e.x+=f.offsetLeft;
85e.y+=f.offsetTop;f!=a&&(e.x+=f.clientLeft||0,e.y+=f.clientTop||0);if(H&&"fixed"==Nc(f,"position")){e.x+=c.body.scrollLeft;e.y+=c.body.scrollTop;break}f=f.offsetParent}while(f&&f!=a);if(D||H&&"absolute"==d)e.y-=c.body.offsetTop;for(f=a;(f=Rc(f))&&f!=c.body&&f!=h;)if(e.x-=f.scrollLeft,!D||"TR"!=f.tagName)e.y-=f.scrollTop}return e}function Tc(a,b){var c=Uc(a),d=Uc(b);return new J(c.x-d.x,c.y-d.y)}
86function Uc(a){var b=new J;if(1==a.nodeType){if(a.getBoundingClientRect){var c=Qc(a);b.x=c.left;b.y=c.top}else{var c=Cb(rb(a)),d=Sc(a);b.x=d.x-c.x;b.y=d.y-c.y}if(G&&!I(12)){var f;F?f="-ms-transform":H?f="-webkit-transform":D?f="-o-transform":G&&(f="-moz-transform");var e;f&&(e=Nc(a,f));e||(e=Nc(a,"transform"));e?(a=e.match(Vc),a=!a?new J(0,0):new J(parseFloat(a[1]),parseFloat(a[2]))):a=new J(0,0);b=new J(b.x+a.x,b.y+a.y)}}else f=u(a.Ld),e=a,a.targetTouches?e=a.targetTouches[0]:f&&a.n.targetTouches&&
87(e=a.n.targetTouches[0]),b.x=e.clientX,b.y=e.clientY;return b}function Wc(a,b,c){b instanceof nb?(c=b.height,b=b.width):c==i&&g(Error("missing height argument"));a.style.width=Pc(b,j);a.style.height=Pc(c,j)}function Pc(a,b){"number"==typeof a&&(a=(b?Math.round(a):a)+"px");return a}
88function Xc(a){if("none"!=Nc(a,"display"))return Yc(a);var b=a.style,c=b.display,d=b.visibility,f=b.position;b.visibility="hidden";b.position="absolute";b.display="inline";a=Yc(a);b.display=c;b.position=f;b.visibility=d;return a}function Yc(a){var b=a.offsetWidth,c=a.offsetHeight,d=H&&!b&&!c;return(!da(b)||d)&&a.getBoundingClientRect?(a=Qc(a),new nb(a.right-a.left,a.bottom-a.top)):new nb(b,c)}function Zc(a){var b=Sc(a),a=Xc(a);return new Kc(b.x,b.y,a.width,a.height)}
89function U(a,b){var c=a.style;"opacity"in c?c.opacity=b:"MozOpacity"in c?c.MozOpacity=b:"filter"in c&&(c.filter=""===b?"":"alpha(opacity="+100*b+")")}function V(a,b){a.style.display=b?"":"none"}function $c(a){return"rtl"==Nc(a,"direction")}var ad=G?"MozUserSelect":H?"WebkitUserSelect":m;
90function bd(a,b){if(/^\d+px?$/.test(b))return parseInt(b,10);var c=a.style.left,d=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;a.style.left=b;var f=a.style.pixelLeft;a.style.left=c;a.runtimeStyle.left=d;return f}
91function cd(a,b){if(F){var c=bd(a,Mc(a,b+"Left")),d=bd(a,Mc(a,b+"Right")),f=bd(a,Mc(a,b+"Top")),e=bd(a,Mc(a,b+"Bottom"));return new Jc(f,d,e,c)}c=T(a,b+"Left");d=T(a,b+"Right");f=T(a,b+"Top");e=T(a,b+"Bottom");return new Jc(parseFloat(f),parseFloat(d),parseFloat(e),parseFloat(c))}var dd={thin:2,medium:4,thick:6};function ed(a,b){if("none"==Mc(a,b+"Style"))return 0;var c=Mc(a,b+"Width");return c in dd?dd[c]:bd(a,c)}
92function fd(a){if(F){var b=ed(a,"borderLeft"),c=ed(a,"borderRight"),d=ed(a,"borderTop"),a=ed(a,"borderBottom");return new Jc(d,c,a,b)}b=T(a,"borderLeftWidth");c=T(a,"borderRightWidth");d=T(a,"borderTopWidth");a=T(a,"borderBottomWidth");return new Jc(parseFloat(d),parseFloat(c),parseFloat(a),parseFloat(b))}var Vc=/matrix\([0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, ([0-9\.\-]+)p?x?, ([0-9\.\-]+)p?x?\)/;function gd(a,b,c){mc.call(this);this.target=a;this.handle=b||a;this.sc=c||new Kc(NaN,NaN,NaN,NaN);this.I=K(a);this.fa=new Fc(this);O(this.handle,["touchstart","mousedown"],this.de,n,this)}v(gd,Ic);var hd=F||G&&I("1.9.3");r=gd.prototype;r.clientX=0;r.clientY=0;r.screenX=0;r.screenY=0;r.Cd=0;r.Dd=0;r.Ga=0;r.Ha=0;r.ad=j;r.pa=n;r.od=0;r.Vd=0;r.Sd=n;r.Ec=n;r.Bb=p("fa");function id(a){da(a.ka)||(a.ka=$c(a.target));return a.ka}
93r.de=function(a){var b="mousedown"==a.type;if(this.ad&&!this.pa&&(!b||tc(a))){jd(a);if(0==this.od)if(this.dispatchEvent(new kd("start",this,a.clientX,a.clientY,a)))this.pa=j,a.preventDefault();else return;else a.preventDefault();var b=this.I,c=b.documentElement,d=!hd;R(this.fa,b,["touchmove","mousemove"],this.Qd,d);R(this.fa,b,["touchend","mouseup"],this.zb,d);hd?(c.setCapture(n),R(this.fa,c,"losecapture",this.zb)):R(this.fa,b?b.parentWindow||b.defaultView:window,"blur",this.zb);F&&this.Sd&&R(this.fa,
94b,"dragstart",pc);this.ae&&R(this.fa,this.ae,"scroll",this.Yd,d);this.clientX=this.Cd=a.clientX;this.clientY=this.Dd=a.clientY;this.screenX=a.screenX;this.screenY=a.screenY;this.Ec?(a=this.target,b=a.offsetLeft,c=a.offsetParent,!c&&"fixed"==Nc(a,"position")&&(c=K(a).documentElement),c?(G?(d=fd(c),b+=d.left):db(8)&&(d=fd(c),b-=d.left),a=$c(c)?c.clientWidth-(b+a.offsetWidth):b):a=b):a=this.target.offsetLeft;this.Ga=a;this.Ha=this.target.offsetTop;this.wc=Cb(rb(this.I));this.Vd=ra()}else this.dispatchEvent("earlycancel")};
95r.zb=function(a,b){this.fa.Mb();hd&&this.I.releaseCapture();if(this.pa){jd(a);this.pa=n;var c=ld(this,this.Ga),d=md(this,this.Ha);this.dispatchEvent(new kd("end",this,a.clientX,a.clientY,a,c,d,b||"touchcancel"==a.type))}else this.dispatchEvent("earlycancel");("touchend"==a.type||"touchcancel"==a.type)&&a.preventDefault()};
96function jd(a){var b=a.type;"touchstart"==b||"touchmove"==b?a.init(a.n.targetTouches[0],a.currentTarget):("touchend"==b||"touchcancel"==b)&&a.init(a.n.changedTouches[0],a.currentTarget)}
97r.Qd=function(a){if(this.ad){jd(a);var b=(this.Ec&&id(this)?-1:1)*(a.clientX-this.clientX),c=a.clientY-this.clientY;this.clientX=a.clientX;this.clientY=a.clientY;this.screenX=a.screenX;this.screenY=a.screenY;if(!this.pa){var d=this.Cd-this.clientX,f=this.Dd-this.clientY;if(d*d+f*f>this.od)if(this.dispatchEvent(new kd("start",this,a.clientX,a.clientY,a)))this.pa=j;else{this.Zc||this.zb(a);return}}c=nd(this,b,c);b=c.x;c=c.y;this.pa&&this.dispatchEvent(new kd("beforedrag",this,a.clientX,a.clientY,a,
98b,c))&&(od(this,a,b,c),a.preventDefault())}};function nd(a,b,c){var d=Cb(rb(a.I)),b=b+(d.x-a.wc.x),c=c+(d.y-a.wc.y);a.wc=d;a.Ga+=b;a.Ha+=c;b=ld(a,a.Ga);a=md(a,a.Ha);return new J(b,a)}r.Yd=function(a){var b=nd(this,0,0);a.clientX=this.clientX;a.clientY=this.clientY;od(this,a,b.x,b.y)};function od(a,b,c,d){a.Yc(c,d);a.dispatchEvent(new kd("drag",a,b.clientX,b.clientY,b,c,d))}
99function ld(a,b){var c=a.sc,d=!isNaN(c.left)?c.left:m,c=!isNaN(c.width)?c.width:0;return Math.min(d!=m?d+c:Infinity,Math.max(d!=m?d:-Infinity,b))}function md(a,b){var c=a.sc,d=!isNaN(c.top)?c.top:m,c=!isNaN(c.height)?c.height:0;return Math.min(d!=m?d+c:Infinity,Math.max(d!=m?d:-Infinity,b))}r.Yc=function(a,b){this.Ec&&id(this)?this.target.style.right=a+"px":this.target.style.left=a+"px";this.target.style.top=b+"px"};
100function kd(a,b,c,d,f,e,h,k){oc.call(this,a);this.clientX=c;this.clientY=d;this.ie=f;this.left=da(e)?e:b.Ga;this.top=da(h)?h:b.Ha;this.me=b;this.le=!!k}v(kd,oc);function pd(a){for(var b=0,c=0;a&&!isNaN(a.offsetLeft)&&!isNaN(a.offsetTop);)b+=a.offsetLeft-a.scrollLeft,c+=a.offsetTop-a.scrollTop,a=a.offsetParent;return{top:c,left:b}};function qd(){this.Wa=[]}qd.prototype.k=function(a,b){this.Wa[a]||(this.Wa[a]=[]);this.Wa[a].push(b)};qd.prototype.Ra=function(a,b){var c=this.Wa[a];c&&C(c,b)};qd.prototype.fireEvent=function(a,b){var c=n,d=this.Wa[a];d&&B(d,function(a){a=a(b);da(a)&&!a&&(c=j)});return c};function rd(a,b){this.S={};this.h=[];var c=arguments.length;if(1<c){c%2&&g(Error("Uneven number of arguments"));for(var d=0;d<c;d+=2)this.set(arguments[d],arguments[d+1])}else if(a){var f;if(a instanceof rd)sd(a),f=a.h.concat(),d=W(a);else{var c=[],e=0;for(f in a)c[e++]=f;f=c;c=[];e=0;for(d in a)c[e++]=a[d];d=c}for(c=0;c<f.length;c++)this.set(f[c],d[c])}}r=rd.prototype;r.m=0;r.Fc=0;function W(a){sd(a);for(var b=[],c=0;c<a.h.length;c++)b.push(a.S[a.h[c]]);return b}
101r.clear=function(){this.S={};this.Fc=this.m=this.h.length=0};r.remove=function(a){return td(this.S,a)?(delete this.S[a],this.m--,this.Fc++,this.h.length>2*this.m&&sd(this),j):n};function sd(a){if(a.m!=a.h.length){for(var b=0,c=0;b<a.h.length;){var d=a.h[b];td(a.S,d)&&(a.h[c++]=d);b++}a.h.length=c}if(a.m!=a.h.length){for(var f={},c=b=0;b<a.h.length;)d=a.h[b],td(f,d)||(a.h[c++]=d,f[d]=1),b++;a.h.length=c}}r.get=function(a,b){return td(this.S,a)?this.S[a]:b};
102r.set=function(a,b){td(this.S,a)||(this.m++,this.h.push(a),this.Fc++);this.S[a]=b};function td(a,b){return Object.prototype.hasOwnProperty.call(a,b)};function ud(a,b){this.x=a;this.y=b};function vd(a){this.points=a}function wd(a){for(var b=0,c=a.length-1,d=0;d<a.length;d++)b+=(a[c].x+a[d].x)*(a[c].y-a[d].y),c=d;return b/2}
103function xd(a,b){for(var c,d=c=0,f,e=a.length-1,h=0;h<a.length;h++)f=a[h].x*a[e].y-a[e].x*a[h].y,c+=(a[h].x+a[e].x)*f,d+=(a[h].y+a[e].y)*f,e=h;f=6*wd(a);c=new ud(Math.abs(c/f),Math.abs(d/f));d=[];for(f=0;f<a.length;f++){var e=a[f],k=(0>wd(a)?-1:1)*b,h=e.x-c.x,l=e.y-c.y,q=0<k?1:0>k?-1:0,k=Math.sqrt(Math.pow(k,2)/(1+Math.pow(h/l,2)));d.push({x:e.x+Math.abs(h/l*k)*(0<h?1:0>h?-1:0)*q,y:e.y+Math.abs(k)*(0<l?1:0>l?-1:0)*q})}return d};function yd(a,b,c,d){0<c?(this.x=a,this.width=c):(this.x=a+c,this.width=-c);0<d?(this.y=b,this.height=d):(this.y=b+d,this.height=-d)};function zd(a,b){this.type=a;this.geometry=b}function Ad(a){return"rect"==a.type?a.geometry.width*a.geometry.height:"polygon"==a.type?Math.abs(wd(a.geometry.points)):0}function Bd(a){if("rect"==a.type)return a;if("polygon"==a.type){for(var a=a.geometry.points,b=a[0].x,c=a[0].x,d=a[0].y,f=a[0].y,e=1;e<a.length;e++)a[e].x>c&&(c=a[e].x),a[e].x<b&&(b=a[e].x),a[e].y>f&&(f=a[e].y),a[e].y<d&&(d=a[e].y);return new zd("rect",new yd(b,d,c-b,f-d))}}
104function Cd(a,b){var c;c=a.geometry.points;var d=0>wd(c)?-1:1;if(4>c.length)c=xd(c,d*b);else{for(var f=c.length-1,e=1,h=[],k=0;k<c.length;k++)f=xd([c[f],c[k],c[e]],d*b),h.push(f[1]),f=k,e++,e>c.length-1&&(e=0);c=h}return new zd("polygon",new vd(c))}
105function Dd(a,b){if("rect"==a.type){var c=a.geometry,d=b({x:c.x,y:c.y}),c=b({x:c.x+c.width,y:c.y+c.height});return new zd("rect",new yd(d.x,d.y,c.x-d.x,c.y-d.y))}if("polygon"==a.type){var f=[];B(a.geometry.points,function(a){f.push(b(a))});return new zd("polygon",new vd(f))}}function Ed(a){return JSON.stringify(a.geometry)}window.annotorious||(window.annotorious={});window.annotorious.geometry||(window.annotorious.geometry={},window.annotorious.geometry.expand=Cd);function Fd(a,b,c){this.src=a;this.text=b;this.shapes=[c];this.context=document.URL};function Gd(){}function Hd(a,b){a.g=new rd;a.Kc=[];a.$a=[];a.Ca=[];a.ya=[];a.Vb=[];a.rb={Na:n,Ma:n};a.za=new rd;a.Xb=i;a.Rc=b}function Id(a,b){var c=a.za.get(b);c||(c={Na:n,Ma:n},a.za.set(b,c));return c}
106function Jd(a,b){var c=a.mc(b);if(!a.g.get(c)){var d=a.yd(b),f=[],e=[];B(a.Kc,function(a){d.k(a.type,a.La)});B(a.$a,function(a){if(a.onInitAnnotator)a.onInitAnnotator(d)});B(a.ya,function(a){a.src==c&&(d.z(a),f.push(a))});B(a.Vb,function(a){a.src==c&&(d.w(a),e.push(a))});B(f,function(b){C(a.ya,b)});B(e,function(b){C(a.Vb,b)});var h=a.za.get(c);h?(h.Na&&d.O(),h.Ma&&d.X(),a.za.remove(c)):(a.rb.Na&&d.O(),a.rb.Ma&&d.X());a.Xb&&d.Z(a.Xb);a.g.set(c,d);C(a.Ca,b)}}
107function Kd(a){var b,c;for(c=a.Ca.length;0<c;c--){for(var d=b=a.Ca[c-1],f=d.offsetTop,e=d.offsetLeft,h=d.offsetWidth,k=d.offsetHeight;d.offsetParent;)d=d.offsetParent,f+=d.offsetTop,e+=d.offsetLeft;f<window.pageYOffset+window.innerHeight&&(e<window.pageXOffset+window.innerWidth&&f+k>window.pageYOffset&&e+h>window.pageXOffset)&&Jd(a,b)}}function Ld(a,b,c){if(b){var d=a.g.get(b);d?c?d.wa():d.X():Id(a,b).Ma=c}else B(W(a.g),function(a){c?a.wa():a.X()}),a.rb.Ma=!c,B(W(a.za),function(a){a.Ma=!c})}
108function Md(a,b,c){if(b){var d=a.g.get(b);d?c?d.$():d.O():Id(a,b).Na=c}else B(W(a.g),function(a){c?a.$():a.O()}),a.rb.Na=!c,B(W(a.za),function(a){a.Na=!c})}r=Gd.prototype;r.ea=function(a,b){var c=i,d=i;t(a)?(c=a,d=b):u(a)&&(d=a);c?(c=this.g.get(c))&&c.ea(d):B(W(this.g),function(a){a.ea(d)})};r.z=function(a,b){if(Nd(this,a.src)){var c=this.g.get(a.src);c?c.z(a,b):(this.ya.push(a),b&&C(this.ya,b))}};r.k=function(a,b){B(W(this.g),function(c){c.k(a,b)});this.Kc.push({type:a,La:b})};
109r.wb=function(a){this.$a.push(a);B(W(this.g),function(b){if(a.onInitAnnotator)a.onInitAnnotator(b)})};function Nd(a,b){return td(a.g.S,b)?j:Ea(a.Ca,function(c){return a.mc(c)==b})!=m}r.R=function(a){a?(a=this.g.get(a))&&a.R():(B(W(this.g),function(a){a.R()}),this.g.clear())};r.qa=function(a){if(Nd(this,a)&&(a=this.g.get(a)))return a.qa().getName()};
110r.J=function(a){if(a){var b=this.g.get(a);return b?b.J():Ba(this.ya,function(b){return b.src==a})}var c=[];B(W(this.g),function(a){Ha(c,a.J())});Ha(c,this.ya);return c};r.ra=function(a){if(Nd(this,a)&&(a=this.g.get(a)))return Ca(a.ra(),function(a){return a.getName()})};r.X=function(a){Ld(this,a,n)};r.O=function(a){Md(this,a,n)};r.r=function(a){if(a){if(Nd(this,a.src)){var b=this.g.get(a.src);b&&b.r(a)}}else B(W(this.g),function(a){a.r()})};
111r.init=function(){this.Rc&&Ha(this.Ca,this.Rc());Kd(this);var a=this,b=O(window,"scroll",function(){0<a.Ca.length?Kd(a):P(b)})};r.tc=function(a){this.Dc(a)&&Jd(this,a)};r.w=function(a){if(Nd(this,a.src)){var b=this.g.get(a.src);b?b.w(a):this.Vb.push(a)}};r.qb=function(a,b){if(Nd(this,a)){var c=this.g.get(a);c&&c.qb(b)}};r.Z=function(a){this.Xb=a;B(W(this.g),function(b){b.Z(a)})};r.wa=function(a){Ld(this,a,j)};r.$=function(a){Md(this,a,j)};function Od(a,b){var c=rb().createElement("DIV");c.innerHTML=a(b||Pd,i,i);if(1==c.childNodes.length){var d=c.firstChild;if(1==d.nodeType)return d}return c}var Pd={};function Qd(a,b){a!=m&&this.append.apply(this,arguments)}r=Qd.prototype;r.oa="";r.set=function(a){this.oa=""+a};r.append=function(a,b,c){this.oa+=a;if(b!=m)for(var d=1;d<arguments.length;d++)this.oa+=arguments[d];return this};r.clear=function(){this.oa=""};r.toString=p("oa");/*
112 Portions of this code are from the google-caja project, received by
113 Google under the Apache license (http://code.google.com/p/google-caja/).
114 All other code is Copyright 2009 Google, Inc. All Rights Reserved.
115
116// Copyright (C) 2006 Google Inc.
117//
118// Licensed under the Apache License, Version 2.0 (the "License");
119// you may not use this file except in compliance with the License.
120// You may obtain a copy of the License at
121//
122// http://www.apache.org/licenses/LICENSE-2.0
123//
124// Unless required by applicable law or agreed to in writing, software
125// distributed under the License is distributed on an "AS IS" BASIS,
126// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
127// See the License for the specific language governing permissions and
128// limitations under the License.
129
130*/
131function Rd(){}
132var Sd={oe:"<",ne:">",ge:"&",pe:"\u00a0",re:'"',he:"'"},Td={a:0,abbr:0,acronym:0,address:0,applet:16,area:2,b:0,base:18,basefont:18,bdo:0,big:0,blockquote:0,body:49,br:2,button:0,caption:0,center:0,cite:0,code:0,col:2,colgroup:1,dd:1,del:0,dfn:0,dir:0,div:0,dl:0,dt:1,em:0,fieldset:0,font:0,form:0,frame:18,frameset:16,h1:0,h2:0,h3:0,h4:0,h5:0,h6:0,head:49,hr:2,html:49,i:0,iframe:20,img:2,input:2,ins:0,isindex:18,kbd:0,label:0,legend:0,li:1,link:18,map:0,menu:0,meta:18,noframes:20,noscript:20,object:16,
133ol:0,optgroup:0,option:1,p:1,param:18,pre:0,q:0,s:0,samp:0,script:20,select:0,small:0,span:0,strike:0,strong:0,style:20,sub:0,sup:0,table:0,tbody:1,td:1,textarea:8,tfoot:1,th:1,thead:1,title:24,tr:1,tt:0,u:0,ul:0,"var":0},Ud=/&/g,Vd=/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi,Wd=/</g,Xd=/>/g,Yd=/\"/g,Zd=/=/g,$d=/\0/g,ae=/&(#\d+|#x[0-9A-Fa-f]+|\w+);/g,be=/^#(\d+)$/,ce=/^#x([0-9A-Fa-f]+)$/,de=RegExp("^\\s*(?:(?:([a-z][a-z-]*)(\\s*=\\s*(\"[^\"]*\"|'[^']*'|(?=[a-z][a-z-]*\\s*=)|[^>\"'\\s]*))?)|(/?>)|[^a-z\\s>]+)",
134"i"),ee=RegExp("^(?:&(\\#[0-9]+|\\#[x][0-9a-f]+|\\w+);|<[!]--[\\s\\S]*?--\>|<!\\w[^>]*>|<\\?[^>*]*>|<(/)?([a-z][a-z0-9]*)|([^<&>]+)|([<&>]))","i");
135Rd.prototype.parse=function(a,b){var c=m,d=n,f=[],e,h,k;a.M=[];for(a.ha=n;b;){var l=b.match(d?de:ee),b=b.substring(l[0].length);if(d)if(l[1]){var q=l[1].toLowerCase();if(l[2]){l=l[3];switch(l.charCodeAt(0)){case 34:case 39:l=l.substring(1,l.length-1)}l=l.replace($d,"").replace(ae,pa(this.Td,this))}else l=q;f.push(q,l)}else l[4]&&(h!==i&&(k?a.Bd&&a.Bd(e,f):a.bd&&a.bd(e)),k&&h&12&&(c=c===m?b.toLowerCase():c.substring(c.length-b.length),d=c.indexOf("</"+e),0>d&&(d=b.length),h&4?a.Vc&&a.Vc(b.substring(0,
136d)):a.Ad&&a.Ad(b.substring(0,d).replace(Vd,"&amp;$1").replace(Wd,"&lt;").replace(Xd,"&gt;")),b=b.substring(d)),e=h=k=i,f.length=0,d=n);else if(l[1])fe(a,l[0]);else if(l[3])k=!l[2],d=j,e=l[3].toLowerCase(),h=Td.hasOwnProperty(e)?Td[e]:i;else if(l[4])fe(a,l[4]);else if(l[5])switch(l[5]){case "<":fe(a,"&lt;");break;case ">":fe(a,"&gt;");break;default:fe(a,"&amp;")}}for(c=a.M.length;0<=--c;)a.aa.append("</",a.M[c],">");a.M.length=0};
137Rd.prototype.Td=function(a){a=a.toLowerCase();if(Sd.hasOwnProperty(a))return Sd[a];var b=a.match(be);return b?String.fromCharCode(parseInt(b[1],10)):(b=a.match(ce))?String.fromCharCode(parseInt(b[1],16)):""};function ge(){};/*
138 Portions of this code are from the google-caja project, received by
139 Google under the Apache license (http://code.google.com/p/google-caja/).
140 All other code is Copyright 2009 Google, Inc. All Rights Reserved.
141
142// Copyright (C) 2006 Google Inc.
143//
144// Licensed under the Apache License, Version 2.0 (the "License");
145// you may not use this file except in compliance with the License.
146// You may obtain a copy of the License at
147//
148// http://www.apache.org/licenses/LICENSE-2.0
149//
150// Unless required by applicable law or agreed to in writing, software
151// distributed under the License is distributed on an "AS IS" BASIS,
152// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
153// See the License for the specific language governing permissions and
154// limitations under the License.
155
156*/
157function he(a,b,c){this.aa=a;this.M=[];this.ha=n;this.Fd=b;this.Jb=c}v(he,ge);
158var ie={"*::class":9,"*::dir":0,"*::id":4,"*::lang":0,"*::onclick":2,"*::ondblclick":2,"*::onkeydown":2,"*::onkeypress":2,"*::onkeyup":2,"*::onload":2,"*::onmousedown":2,"*::onmousemove":2,"*::onmouseout":2,"*::onmouseover":2,"*::onmouseup":2,"*::style":3,"*::title":0,"*::accesskey":0,"*::tabindex":0,"*::onfocus":2,"*::onblur":2,"a::coords":0,"a::href":1,"a::hreflang":0,"a::name":7,"a::onblur":2,"a::rel":0,"a::rev":0,"a::shape":0,"a::target":10,"a::type":0,"area::accesskey":0,"area::alt":0,"area::coords":0,
159"area::href":1,"area::nohref":0,"area::onfocus":2,"area::shape":0,"area::tabindex":0,"area::target":10,"bdo::dir":0,"blockquote::cite":1,"br::clear":0,"button::accesskey":0,"button::disabled":0,"button::name":8,"button::onblur":2,"button::onfocus":2,"button::tabindex":0,"button::type":0,"button::value":0,"caption::align":0,"col::align":0,"col::char":0,"col::charoff":0,"col::span":0,"col::valign":0,"col::width":0,"colgroup::align":0,"colgroup::char":0,"colgroup::charoff":0,"colgroup::span":0,"colgroup::valign":0,
160"colgroup::width":0,"del::cite":1,"del::datetime":0,"dir::compact":0,"div::align":0,"dl::compact":0,"font::color":0,"font::face":0,"font::size":0,"form::accept":0,"form::action":1,"form::autocomplete":0,"form::enctype":0,"form::method":0,"form::name":7,"form::onreset":2,"form::onsubmit":2,"form::target":10,"h1::align":0,"h2::align":0,"h3::align":0,"h4::align":0,"h5::align":0,"h6::align":0,"hr::align":0,"hr::noshade":0,"hr::size":0,"hr::width":0,"img::align":0,"img::alt":0,"img::border":0,"img::height":0,
161"img::hspace":0,"img::ismap":0,"img::longdesc":1,"img::name":7,"img::src":1,"img::usemap":11,"img::vspace":0,"img::width":0,"input::accept":0,"input::accesskey":0,"input::autocomplete":0,"input::align":0,"input::alt":0,"input::checked":0,"input::disabled":0,"input::ismap":0,"input::maxlength":0,"input::name":8,"input::onblur":2,"input::onchange":2,"input::onfocus":2,"input::onselect":2,"input::readonly":0,"input::size":0,"input::src":1,"input::tabindex":0,"input::type":0,"input::usemap":11,"input::value":0,
162"ins::cite":1,"ins::datetime":0,"label::accesskey":0,"label::for":5,"label::onblur":2,"label::onfocus":2,"legend::accesskey":0,"legend::align":0,"li::type":0,"li::value":0,"map::name":7,"menu::compact":0,"ol::compact":0,"ol::start":0,"ol::type":0,"optgroup::disabled":0,"optgroup::label":0,"option::disabled":0,"option::label":0,"option::selected":0,"option::value":0,"p::align":0,"pre::width":0,"q::cite":1,"select::disabled":0,"select::multiple":0,"select::name":8,"select::onblur":2,"select::onchange":2,
163"select::onfocus":2,"select::size":0,"select::tabindex":0,"table::align":0,"table::bgcolor":0,"table::border":0,"table::cellpadding":0,"table::cellspacing":0,"table::frame":0,"table::rules":0,"table::summary":0,"table::width":0,"tbody::align":0,"tbody::char":0,"tbody::charoff":0,"tbody::valign":0,"td::abbr":0,"td::align":0,"td::axis":0,"td::bgcolor":0,"td::char":0,"td::charoff":0,"td::colspan":0,"td::headers":6,"td::height":0,"td::nowrap":0,"td::rowspan":0,"td::scope":0,"td::valign":0,"td::width":0,
164"textarea::accesskey":0,"textarea::cols":0,"textarea::disabled":0,"textarea::name":8,"textarea::onblur":2,"textarea::onchange":2,"textarea::onfocus":2,"textarea::onselect":2,"textarea::readonly":0,"textarea::rows":0,"textarea::tabindex":0,"tfoot::align":0,"tfoot::char":0,"tfoot::charoff":0,"tfoot::valign":0,"th::abbr":0,"th::align":0,"th::axis":0,"th::bgcolor":0,"th::char":0,"th::charoff":0,"th::colspan":0,"th::headers":6,"th::height":0,"th::nowrap":0,"th::rowspan":0,"th::scope":0,"th::valign":0,
165"th::width":0,"thead::align":0,"thead::char":0,"thead::charoff":0,"thead::valign":0,"tr::align":0,"tr::bgcolor":0,"tr::char":0,"tr::charoff":0,"tr::valign":0,"ul::compact":0,"ul::type":0};
166he.prototype.Bd=function(a,b){if(!this.ha&&Td.hasOwnProperty(a)){var c=Td[a];if(!(c&32))if(c&16)this.ha=!(c&2);else{for(var d=b,f=0;f<d.length;f+=2){var e=d[f],h=d[f+1],k=m,l;if((l=a+"::"+e,ie.hasOwnProperty(l))||(l="*::"+e,ie.hasOwnProperty(l)))k=ie[l];if(k!==m)switch(k){case 0:break;case 2:case 3:h=m;break;case 4:case 5:case 6:case 7:case 8:case 9:h=this.Jb?this.Jb(h):h;break;case 1:h=this.Fd&&this.Fd(h);break;case 11:h&&"#"===h.charAt(0)?(h=this.Jb?this.Jb(h):h)&&(h="#"+h):h=m;break;default:h=
167m}else h=m;d[f+1]=h}if(b=d){c&2||this.M.push(a);this.aa.append("<",a);c=0;for(d=b.length;c<d;c+=2)f=b[c],e=b[c+1],e!==m&&e!==i&&this.aa.append(" ",f,'="',e.replace(Ud,"&amp;").replace(Wd,"&lt;").replace(Xd,"&gt;").replace(Yd,"&#34;").replace(Zd,"&#61;"),'"');this.aa.append(">")}}}};
168he.prototype.bd=function(a){if(this.ha)this.ha=n;else if(Td.hasOwnProperty(a)){var b=Td[a];if(!(b&50)){if(b&1)for(b=this.M.length;0<=--b;){var c=this.M[b];if(c===a)break;if(!(Td[c]&1))return}else for(b=this.M.length;0<=--b&&this.M[b]!==a;);if(!(0>b)){for(var d=this.M.length;--d>b;)c=this.M[d],Td[c]&1||this.aa.append("</",c,">");this.M.length=b;this.aa.append("</",a,">")}}}};function fe(a,b){a.ha||a.aa.append(b)}he.prototype.Ad=function(a){this.ha||this.aa.append(a)};
169he.prototype.Vc=function(a){this.ha||this.aa.append(a)};function je(a,b,c,d,f){if(!F&&(!H||!I("525")))return j;if(Oa&&f)return ke(a);if(f&&!d||!c&&(17==b||18==b)||F&&d&&b==a)return n;switch(a){case 13:return!(F&&db(9));case 27:return!H}return ke(a)}function ke(a){if(48<=a&&57>=a||96<=a&&106>=a||65<=a&&90>=a||H&&0==a)return j;switch(a){case 32:case 63:case 107:case 109:case 110:case 111:case 186:case 59:case 189:case 187:case 61:case 188:case 190:case 191:case 192:case 222:case 219:case 220:case 221:return j;default:return n}}
170function le(a){switch(a){case 61:return 187;case 59:return 186;case 224:return 91;case 0:return 224;default:return a}};function me(a,b){mc.call(this);a&&ne(this,a,b)}v(me,Ic);r=me.prototype;r.B=m;r.Eb=m;r.qc=m;r.Fb=m;r.ja=-1;r.ia=-1;r.ic=n;
171var oe={3:13,12:144,63232:38,63233:40,63234:37,63235:39,63236:112,63237:113,63238:114,63239:115,63240:116,63241:117,63242:118,63243:119,63244:120,63245:121,63246:122,63247:123,63248:44,63272:46,63273:36,63275:35,63276:33,63277:34,63289:144,63302:45},pe={Up:38,Down:40,Left:37,Right:39,Enter:13,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,"U+007F":46,Home:36,End:35,PageUp:33,PageDown:34,Insert:45},qe=F||H&&I("525"),re=Oa&&G;r=me.prototype;
172r.Nd=function(a){if(H&&(17==this.ja&&!a.ctrlKey||18==this.ja&&!a.altKey))this.ia=this.ja=-1;qe&&!je(a.keyCode,this.ja,a.shiftKey,a.ctrlKey,a.altKey)?this.handleEvent(a):(this.ia=G?le(a.keyCode):a.keyCode,re&&(this.ic=a.altKey))};r.Pd=function(a){this.ia=this.ja=-1;this.ic=a.altKey};
173r.handleEvent=function(a){var b=a.n,c,d,f=b.altKey;F&&"keypress"==a.type?(c=this.ia,d=13!=c&&27!=c?b.keyCode:0):H&&"keypress"==a.type?(c=this.ia,d=0<=b.charCode&&63232>b.charCode&&ke(c)?b.charCode:0):D?(c=this.ia,d=ke(c)?b.keyCode:0):(c=b.keyCode||this.ia,d=b.charCode||0,re&&(f=this.ic),Oa&&(63==d&&224==c)&&(c=191));var e=c,h=b.keyIdentifier;c?63232<=c&&c in oe?e=oe[c]:25==c&&a.shiftKey&&(e=9):h&&h in pe&&(e=pe[h]);a=e==this.ja;this.ja=e;b=new se(e,d,a,b);b.altKey=f;this.dispatchEvent(b)};r.c=p("B");
174function ne(a,b,c){a.Fb&&a.detach();a.B=b;a.Eb=O(a.B,"keypress",a,c);a.qc=O(a.B,"keydown",a.Nd,c,a);a.Fb=O(a.B,"keyup",a.Pd,c,a)}r.detach=function(){this.Eb&&(P(this.Eb),P(this.qc),P(this.Fb),this.Fb=this.qc=this.Eb=m);this.B=m;this.ia=this.ja=-1};function se(a,b,c,d){d&&this.init(d,i);this.type="key";this.keyCode=a;this.charCode=b;this.repeat=c}v(se,rc);function te(){}fa(te);te.prototype.Xd=0;te.ob();function ue(a){mc.call(this);this.ib=a||rb();this.ka=ve}v(ue,Ic);ue.prototype.Rd=te.ob();var ve=m;function we(a,b){switch(a){case 1:return b?"disable":"enable";case 2:return b?"highlight":"unhighlight";case 4:return b?"activate":"deactivate";case 8:return b?"select":"unselect";case 16:return b?"check":"uncheck";case 32:return b?"focus":"blur";case 64:return b?"open":"close"}g(Error("Invalid component state"))}r=ue.prototype;r.Db=m;r.Y=n;r.B=m;r.ka=m;r.sa=m;r.fb=m;r.Fa=m;r.fe=n;r.c=p("B");
175r.Bb=function(){return this.oc||(this.oc=new Fc(this))};r.Cc=function(a){this.sa&&this.sa!=a&&g(Error("Method not supported"));ue.G.Cc.call(this,a)};r.ed=p("ib");r.hb=function(a){this.Y&&g(Error("Component already rendered"));if(a&&this.eb(a)){this.fe=j;if(!this.ib||this.ib.I!=K(a))this.ib=rb(a);this.Xc(a);this.Ia()}else g(Error("Invalid element to decorate"))};r.eb=ba(j);r.Xc=function(a){this.B=a};r.Ia=function(){function a(a){!a.Y&&a.c()&&a.Ia()}this.Y=j;this.fb&&B(this.fb,a,i)};
176r.Ab=function(){function a(a){a.Y&&a.Ab()}this.fb&&B(this.fb,a,i);this.oc&&this.oc.Mb();this.Y=n};r.mb=p("B");r.Sa=function(a){this.Y&&g(Error("Component already rendered"));this.ka=a};
177r.removeChild=function(a,b){if(a){var c=t(a)?a:a.Db||(a.Db=":"+(a.Rd.Xd++).toString(36)),d;this.Fa&&c?(d=this.Fa,d=(c in d?d[c]:i)||m):d=m;a=d;c&&a&&(d=this.Fa,c in d&&delete d[c],C(this.fb,a),b&&(a.Ab(),a.B&&yb(a.B)),c=a,c==m&&g(Error("Unable to set parent component")),c.sa=m,ue.G.Cc.call(c,m))}a||g(Error("Child is not in parent component"));return a};function xe(){}var ye;fa(xe);r=xe.prototype;r.mb=function(a){return a};r.jb=function(a,b,c){if(a=a.c?a.c():a)if(F&&!I("7")){var d=ze(hb(a),b);d.push(b);qa(c?ib:kb,a).apply(m,d)}else c?ib(a,b):kb(a,b)};r.eb=ba(j);
178r.hb=function(a,b){if(b.id){var c=b.id;if(a.sa&&a.sa.Fa){var d=a.sa.Fa,f=a.Db;f in d&&delete d[f];d=a.sa.Fa;c in d&&g(Error('The object already contains the key "'+c+'"'));d[c]=a}a.Db=c}(c=this.mb(b))&&c.firstChild?(c=c.firstChild.nextSibling?Ga(c.childNodes):c.firstChild,a.gb=c):a.gb=m;var e=0,h=this.nb(),k=this.nb(),l=n,q=n,c=n,d=hb(b);B(d,function(a){if(!l&&a==h)l=j,k==h&&(q=j);else if(!q&&a==k)q=j;else{var b=e;if(!this.Ed){this.yb||Ae(this);var c=this.yb,d={},f;for(f in c)d[c[f]]=f;this.Ed=d}a=
179parseInt(this.Ed[a],10);e=b|(isNaN(a)?0:a)}},this);a.t=e;l||(d.push(h),k==h&&(q=j));q||d.push(k);(f=a.W)&&d.push.apply(d,f);if(F&&!I("7")){var w=ze(d);0<w.length&&(d.push.apply(d,w),c=j)}if(!l||!q||f||c)b.className=d.join(" ");a.isEnabled()||this.Ta(b,1,j);a.t&8&&this.Ta(b,8,j);a.P&16&&this.Ta(b,16,!!(a.t&16));a.P&64&&this.Ta(b,64,!!(a.t&64));return b};
180r.Ob=function(a,b){var c=!b,d=F||D?a.getElementsByTagName("*"):m;if(ad){if(c=c?"none":"",a.style[ad]=c,d)for(var f=0,e;e=d[f];f++)e.style[ad]=c}else if(F||D)if(c=c?"on":"",a.setAttribute("unselectable",c),d)for(f=0;e=d[f];f++)e.setAttribute("unselectable",c)};r.Sa=function(a,b){this.jb(a,this.nb()+"-rtl",b)};r.sd=function(a){var b;return a.P&32&&(b=a.Ja())?Bb(b):n};
181r.Bc=function(a,b){var c;if(a.P&32&&(c=a.Ja())){if(!b&&a.t&32){try{c.blur()}catch(d){}a.t&32&&a.fd()}Bb(c)!=b&&(b?c.tabIndex=0:(c.tabIndex=-1,c.removeAttribute("tabIndex")))}};r.L=function(a,b,c){var d=a.c();if(d){var f;this.yb||Ae(this);(f=this.yb[b])&&this.jb(a,f,c);this.Ta(d,b,c)}};r.Ta=function(a,b,c){ye||(ye={1:"disabled",8:"selected",16:"checked",64:"expanded"});(b=ye[b])&&a.setAttribute("aria-"+b,c)};
182r.la=function(a,b){var c=this.mb(a);if(c&&(xb(c),b))if(t(b))if("textContent"in c)c.textContent=b;else if(c.firstChild&&3==c.firstChild.nodeType){for(;c.lastChild!=c.firstChild;)c.removeChild(c.lastChild);c.firstChild.data=b}else xb(c),c.appendChild(K(c).createTextNode(b));else{var d=function(a){if(a){var b=K(c);c.appendChild(t(a)?b.createTextNode(a):a)}};ha(b)?B(b,d):ia(b)&&!("nodeType"in b)?B(Ga(b),d):d(b)}};r.Ja=function(a){return a.c()};r.nb=ba("goog-control");
183function ze(a,b){var c=[];b&&(a=a.concat([b]));B([],function(d){Da(d,qa(Fa,a))&&(!b||Fa(d,b))&&c.push(d.join("_"))});return c}function Ae(a){var b=a.nb();a.yb={1:b+"-disabled",2:b+"-hover",4:b+"-active",8:b+"-selected",16:b+"-checked",32:b+"-focused",64:b+"-open"}};var Be={};function X(a,b,c){ue.call(this,c);if(!b){for(var b=this.constructor,d;b;){d=ka(b);if(d=Be[d])break;b=b.G?b.G.constructor:m}b=d?u(d.ob)?d.ob():new d:m}this.C=b;this.gb=a}v(X,ue);r=X.prototype;r.gb=m;r.t=0;r.P=39;r.kc=255;r.ee=0;r.Qb=j;r.W=m;r.pc=j;r.hc=n;r.$d=m;function Ce(a){a.Y&&n!=a.pc&&De(a,n);a.pc=n}r.Ja=function(){return this.C.Ja(this)};
184r.jb=function(a,b){b?a&&(this.W?Fa(this.W,a)||this.W.push(a):this.W=[a],this.C.jb(this,a,j)):a&&this.W&&(C(this.W,a),0==this.W.length&&(this.W=m),this.C.jb(this,a,n))};r.mb=function(){return this.C.mb(this.c())};r.eb=function(a){return this.C.eb(a)};r.Xc=function(a){this.B=a=this.C.hb(this,a);var b=this.$d||i;b&&a.setAttribute("role",b);this.hc||this.C.Ob(a,n);this.Qb="none"!=a.style.display};
185r.Ia=function(){X.G.Ia.call(this);var a=this.C;this.ka==m&&(this.ka=$c(this.Y?this.B:this.ib.I.body));this.ka&&a.Sa(this.c(),j);this.isEnabled()&&a.Bc(this,this.Qb);if(this.P&-2&&(this.pc&&De(this,j),this.P&32&&(a=this.Ja()))){var b=this.rc||(this.rc=new me);ne(b,a);R(R(R(this.Bb(),b,"key",this.Od),a,"focus",this.Md),a,"blur",this.fd)}};
186function De(a,b){var c=a.Bb(),d=a.c();b?(R(R(R(R(c,d,"mouseover",a.kd),d,"mousedown",a.hd),d,"mouseup",a.ld),d,"mouseout",a.jd),a.Cb!=ea&&R(c,d,"contextmenu",a.Cb),F&&R(c,d,"dblclick",a.gd)):(Hc(Hc(Hc(Hc(c,d,"mouseover",a.kd),d,"mousedown",a.hd),d,"mouseup",a.ld),d,"mouseout",a.jd),a.Cb!=ea&&Hc(c,d,"contextmenu",a.Cb),F&&Hc(c,d,"dblclick",a.gd))}r.Ab=function(){X.G.Ab.call(this);this.rc&&this.rc.detach();this.Qb&&this.isEnabled()&&this.C.Bc(this,n)};
187r.la=function(a){this.C.la(this.c(),a);this.gb=a};r.Sa=function(a){X.G.Sa.call(this,a);var b=this.c();b&&this.C.Sa(b,a)};r.Ob=function(a){this.hc=a;var b=this.c();b&&this.C.Ob(b,a)};r.isEnabled=function(){return!(this.t&1)};function Ee(a,b){Ge(a,2,b)&&a.L(2,b)}r.setActive=function(a){Ge(this,4,a)&&this.L(4,a)};r.L=function(a,b){this.P&a&&b!=!!(this.t&a)&&(this.C.L(this,a,b),this.t=b?this.t|a:this.t&~a)};function Y(a,b){return!!(a.kc&b)&&!!(a.P&b)}
188function Ge(a,b,c){return!!(a.P&b)&&!!(a.t&b)!=c&&(!(a.ee&b)||a.dispatchEvent(we(b,c)))&&!a.Zc}r.kd=function(a){(!a.relatedTarget||!Ab(this.c(),a.relatedTarget))&&(this.dispatchEvent("enter")&&this.isEnabled()&&Y(this,2))&&Ee(this,j)};r.jd=function(a){if((!a.relatedTarget||!Ab(this.c(),a.relatedTarget))&&this.dispatchEvent("leave"))Y(this,4)&&this.setActive(n),Y(this,2)&&Ee(this,n)};r.Cb=ea;
189r.hd=function(a){this.isEnabled()&&(Y(this,2)&&Ee(this,j),tc(a)&&(Y(this,4)&&this.setActive(j),this.C.sd(this)&&this.Ja().focus()));!this.hc&&tc(a)&&a.preventDefault()};r.ld=function(a){this.isEnabled()&&(Y(this,2)&&Ee(this,j),this.t&4&&(He(this,a)&&Y(this,4))&&this.setActive(n))};r.gd=function(a){this.isEnabled()&&He(this,a)};
190function He(a,b){if(Y(a,16)){var c=!(a.t&16);Ge(a,16,c)&&a.L(16,c)}Y(a,8)&&Ge(a,8,j)&&a.L(8,j);Y(a,64)&&(c=!(a.t&64),Ge(a,64,c)&&a.L(64,c));c=new oc("action",a);b&&(c.altKey=b.altKey,c.ctrlKey=b.ctrlKey,c.metaKey=b.metaKey,c.shiftKey=b.shiftKey,c.yc=b.yc);return a.dispatchEvent(c)}r.Md=function(){Y(this,32)&&Ge(this,32,j)&&this.L(32,j)};r.fd=function(){Y(this,4)&&this.setActive(n);Y(this,32)&&Ge(this,32,n)&&this.L(32,n)};
191r.Od=function(a){return this.Qb&&this.isEnabled()&&13==a.keyCode&&He(this,a)?(a.preventDefault(),a.stopPropagation(),j):n};u(X)||g(Error("Invalid component class "+X));u(xe)||g(Error("Invalid renderer class "+xe));var Ie=ka(X);Be[Ie]=xe;function Je(){return new X(m)}u(Je)||g(Error("Invalid decorator function "+Je));function Ke(){}v(Ke,xe);fa(Ke);r=Ke.prototype;r.hb=function(a,b){Ce(a);a.kc&=-256;a.Y&&a.t&32&&g(Error("Component already rendered"));a.t&32&&a.L(32,n);a.P&=-33;Ke.G.hb.call(this,a,b);a.la(b.value);return b};r.eb=function(a){return"TEXTAREA"==a.tagName};r.Sa=ea;r.sd=function(a){return a.isEnabled()};r.Bc=ea;r.L=function(a,b,c){Ke.G.L.call(this,a,b,c);if((a=a.c())&&1==b)a.disabled=c};r.Ta=ea;r.la=function(a,b){a&&(a.value=b)};r.nb=ba("goog-textarea");function Le(a,b,c){X.call(this,a,b||Ke.ob(),c);Ce(this);this.Ob(j);a||(this.gb="")}v(Le,X);var Me=G||H;r=Le.prototype;r.Oa=n;r.ga=0;r.Ud=0;r.wd=0;r.nd=n;r.Ib=n;r.Ac=n;r.zc=n;function Ne(a){return a.pb.top+a.pb.bottom+a.Tc.top+a.Tc.bottom}function Oe(a){var b=a.wd,c=a.c();b&&(c&&a.Ib)&&(b-=Ne(a));return b}function Pe(a){var b=a.Ud,c=a.c();b&&(c&&a.Ib)&&(b-=Ne(a));return b}r.la=function(a){Le.G.la.call(this,a);this.c()&&this.Ka()};
192r.Ia=function(){Le.G.Ia.call(this);var a=this.c();S(a,{overflowY:"hidden",overflowX:"auto",boxSizing:"border-box",MsBoxSizing:"border-box",WebkitBoxSizing:"border-box",MozBoxSizing:"border-box"});this.pb=cd(a,"padding");this.Tc=fd(a);R(R(R(R(this.Bb(),a,"scroll",this.Ka),a,"focus",this.Ka),a,"keyup",this.Ka),a,"mouseup",this.Wd);this.c()&&this.Ka()};
193function Qe(a){if(!a.nd){var b=a.c().cloneNode(n);S(b,{position:"absolute",height:"auto",top:"-9999px",margin:"0",padding:"1px",border:"1px solid #000",overflow:"hidden"});a.ed().I.body.appendChild(b);var c=b.scrollHeight;b.style.padding="10px";var d=b.scrollHeight;a.Ac=d>c;b.style.borderWidth="10px";a.zc=b.scrollHeight>d;b.style.height="100px";100!=b.offsetHeight&&(a.Ib=j);yb(b);a.nd=j}var b=a.c(),c=a.c().scrollHeight,f=a.c(),d=f.offsetHeight-f.clientHeight;if(!a.Ac)var e=a.pb,d=d-(e.top+e.bottom);
194a.zc||(f=fd(f),d-=f.top+f.bottom);c+=0<d?d:0;a.Ib?c-=Ne(a):(a.Ac||(d=a.pb,c+=d.top+d.bottom),a.zc||(a=fd(b),c+=a.top+a.bottom));return c}function Re(a,b){a.ga!=b&&(a.ga=b,a.c().style.height=b+"px")}function Se(a){a=a.c();a.style.height="auto";var b=a.value.match(/\n/g)||[];a.rows=b.length+1}
195r.Ka=function(){if(!this.Oa){var a=n;this.Oa=j;var b=this.c(),c=this.ga;if(b.scrollHeight){var d=n,f=n,e=Qe(this),h=b.offsetHeight,k=Oe(this),l=Pe(this);k&&e<k?(Re(this,k),d=j):l&&e>l?(Re(this,l),b.style.overflowY="",f=j):h!=e?Re(this,e):this.ga||(this.ga=e);!d&&(!f&&Me)&&(a=j)}else Se(this);this.Oa=n;a&&(a=this.c(),this.Oa||(this.Oa=j,b=n,a.value||(a.value=" ",b=j),(f=a.scrollHeight)?(e=Qe(this),d=Oe(this),h=Pe(this),!(d&&e<=d)&&!(h&&e>=h)&&(h=this.pb,a.style.paddingBottom=h.bottom+1+"px",Qe(this)==
196e&&(a.style.paddingBottom=h.bottom+f+"px",a.scrollTop=0,f=Qe(this)-f,f>=d?Re(this,f):Re(this,d)),a.style.paddingBottom=h.bottom+"px")):Se(this),b&&(a.value=""),this.Oa=n));c!=this.ga&&this.dispatchEvent("resize")}};r.Wd=function(){var a=this.c(),b=a.offsetHeight;a.filters&&a.filters.length&&(a=a.filters.item("DXImageTransform.Microsoft.DropShadow"))&&(b-=a.offX);b!=this.ga&&(this.ga=this.wd=b)};F&&I(8);function Te(a){return"object"===typeof a&&a&&0===a.je?a.content:String(a).replace(Ue,Ve)}var We={"\x00":"&#0;",'"':"&quot;","&":"&amp;","'":"&#39;","<":"&lt;",">":"&gt;","\t":"&#9;","\n":"&#10;","\x0B":"&#11;","\f":"&#12;","\r":"&#13;"," ":"&#32;","-":"&#45;","/":"&#47;","=":"&#61;","`":"&#96;","\u0085":"&#133;","\u00a0":"&#160;","\u2028":"&#8232;","\u2029":"&#8233;"};function Ve(a){return We[a]}var Ue=/[\x00\x22\x26\x27\x3c\x3e]/g;function Xe(){return'<div class="annotorious-popup top-left" style="position:absolute;z-index:1"><div class="annotorious-popup-buttons"><a class="annotorious-popup-button annotorious-popup-button-edit" title="Edit" href="javascript:void(0);">EDIT</a><a class="annotorious-popup-button annotorious-popup-button-delete" title="Delete" href="javascript:void(0);">DELETE</a></div><span class="annotorious-popup-text"></span></div>'}
197function Ye(){return'<div class="annotorious-editor" style="position:absolute;z-index:1"><form><textarea class="annotorious-editor-text" placeholder="Add a Comment..." tabindex="1"></textarea><div class="annotorious-editor-button-container"><a class="annotorious-editor-button annotorious-editor-button-cancel" href="javascript:void(0);" tabindex="3">Cancel</a><a class="annotorious-editor-button annotorious-editor-button-save" href="javascript:void(0);" tabindex="2">Save</a></div></form></div>'};function Ze(a){function b(){var a=d.Ea;a.c()&&a.Ka()}this.element=Od(Ye);this.d=a;this.Id=a.getItem();this.Ea=new Le("");this.Gd=M(".annotorious-editor-button-cancel",this.element)[0];this.Jc=M(".annotorious-editor-button-save",this.element)[0];var c;c=this.Jc;gb?c=c.parentElement:(c=c.parentNode,c=zb(c)?c:m);this.Hd=c;this.Va=[];var d=this;O(this.Gd,"click",function(b){b.preventDefault();a.stopSelection(d.Pc);d.close()});O(this.Jc,"click",function(b){b.preventDefault();b=d.cd();a.z(b);a.stopSelection();
198d.Pc?a.fireEvent("onAnnotationUpdated",b):a.fireEvent("onAnnotationCreated",b);d.close()});V(this.element,n);a.element.appendChild(this.element);this.Ea.hb(M(".annotorious-editor-text",this.element)[0]);var f=this.element;c=document.createElement("div");S(c,"position","absolute");S(c,"top","0px");S(c,"right","0px");S(c,"width","5px");S(c,"height","100%");S(c,"cursor","e-resize");f.appendChild(c);var e=fd(f),e=Zc(f).width-e.right-e.left;c=new gd(c);c.sc=new Kc(e,0,800,0)||new Kc(NaN,NaN,NaN,NaN);c.Yc=
199function(a){S(f,"width",a+"px");b&&b()}}r=Ze.prototype;r.gc=function(a){var b=vb("div","annotorious-editor-field");t(a)?b.innerHTML=a:u(a)?this.Va.push({A:b,lc:a}):zb(a)&&b.appendChild(a);a=this.Hd;a.parentNode&&a.parentNode.insertBefore(b,a)};r.open=function(a){(this.sb=this.Pc=a)&&this.Ea.la(String(a.text));V(this.element,j);this.Ea.c().focus();B(this.Va,function(b){var c=b.lc(a);t(c)?b.A.innerHTML=c:zb(c)&&(xb(b.A),b.A.appendChild(c))})};r.close=function(){V(this.element,n);this.Ea.la("")};
200r.setPosition=function(a){Oc(this.element,a.x,a.y)};r.cd=function(){var a;a=this.Ea.c().value;var b=new Qd;(new Rd).parse(new he(b,function(a){return a},i),a);a=b.toString();this.sb?this.sb.text=a:this.sb=new Fd(this.Id.src,a,this.d.qa().getShape());return this.sb};Ze.prototype.addField=Ze.prototype.gc;Ze.prototype.getAnnotation=Ze.prototype.cd;function $e(a,b,c){var d=this;c||(c="Click and Drag to Annotate");this.element=Od(af,{vc:c});this.d=a;this.Mc=M(".annotorious-hint-msg",this.element)[0];this.Lc=M(".annotorious-hint-icon",this.element)[0];this.ec=function(){d.show()};this.dc=function(){bf(d)};this.Tb();bf(this);b.appendChild(this.element)}
201$e.prototype.Tb=function(){var a=this;this.Oc=O(this.Lc,"mouseover",function(){a.show();window.clearTimeout(a.$b)});this.Nc=O(this.Lc,"mouseout",function(){bf(a)});this.d.k("onMouseOverItem",this.ec);this.d.k("onMouseOutOfItem",this.dc)};$e.prototype.tb=function(){P(this.Oc);P(this.Nc);this.d.Ra("onMouseOverItem",this.ec);this.d.Ra("onMouseOutOfItem",this.dc)};$e.prototype.show=function(){window.clearTimeout(this.$b);U(this.Mc,0.8);var a=this;this.$b=window.setTimeout(function(){bf(a)},3E3)};
202function bf(a){window.clearTimeout(a.$b);U(a.Mc,0)}$e.prototype.R=function(){this.tb();delete this.Oc;delete this.Nc;delete this.ec;delete this.dc;yb(this.element)};function cf(a){this.element=Od(Xe);this.d=a;this.Jd=M(".annotorious-popup-text",this.element)[0];this.N=M(".annotorious-popup-buttons",this.element)[0];this.Yb=n;this.Va=[];var b=M(".annotorious-popup-button-edit",this.N)[0],c=M(".annotorious-popup-button-delete",this.N)[0],d=this;O(b,"mouseover",function(){ib(b,"annotorious-popup-button-active")});O(b,"mouseout",function(){kb(b,"annotorious-popup-button-active")});O(b,"click",function(){U(d.element,0);S(d.element,"pointer-events","none");a.$c(d.f)});
203O(c,"mouseover",function(){ib(c,"annotorious-popup-button-active")});O(c,"mouseout",function(){kb(c,"annotorious-popup-button-active")});O(c,"click",function(){a.fireEvent("beforeAnnotationRemoved",d.f)||(U(d.element,0),S(d.element,"pointer-events","none"),a.w(d.f),a.fireEvent("onAnnotationRemoved",d.f))});df&&(O(this.element,"mouseover",function(){window.clearTimeout(d.Wb);0.9>(d.N.style[za("opacity")]||"")&&U(d.N,0.9);d.clearHideTimer()}),O(this.element,"mouseout",function(){U(d.N,0);d.startHideTimer()}),
204a.k("onMouseOutOfItem",function(){d.startHideTimer()}));U(this.N,0);U(this.element,0);S(this.element,"pointer-events","none");a.element.appendChild(this.element)}r=cf.prototype;r.gc=function(a){var b=vb("div","annotorious-popup-field");t(a)?b.innerHTML=a:u(a)?this.Va.push({A:b,lc:a}):zb(a)&&b.appendChild(a);this.element.appendChild(b)};
205r.startHideTimer=function(){this.Yb=n;if(!this.ab){var a=this;this.ab=window.setTimeout(function(){a.d.fireEvent("beforePopupHide",a);a.Yb||(U(a.element,0),S(a.element,"pointer-events","none"),U(a.N,0.9),delete a.ab)},150)}};r.clearHideTimer=function(){this.Yb=j;this.ab&&(window.clearTimeout(this.ab),delete this.ab)};
206r.show=function(a,b){this.clearHideTimer();b&&this.setPosition(b);a&&this.setAnnotation(a);this.Wb&&window.clearTimeout(this.Wb);U(this.N,0.9);if(df){var c=this;this.Wb=window.setTimeout(function(){U(c.N,0)},1E3)}U(this.element,0.9);S(this.element,"pointer-events","auto")};r.setPosition=function(a){Oc(this.element,new J(a.x,a.y))};
207r.setAnnotation=function(a){this.f=a;this.Jd.innerHTML=a.text?a.text.replace(/\n/g,"<br/>"):'<span class="annotorious-popup-empty">No comment</span>';"editable"in a&&a.editable==n?V(this.N,n):V(this.N,j);B(this.Va,function(b){var c=b.lc(a);t(c)?b.A.innerHTML=c:zb(c)&&(xb(b.A),b.A.appendChild(c))})};cf.prototype.addField=cf.prototype.gc;function ef(a,b){this.T=a;this.d=b;this.xa=[];this.U=[];this.F=this.T.getContext("2d");this.ma=j;this.ub=n;var c=this;O(this.T,ff,function(a){if(c.ma){var b=gf(c,a.offsetX,a.offsetY);b?(c.ub=c.ub&&b==c.f,c.f?c.f!=b&&(c.ma=n,c.d.popup.startHideTimer()):(c.f=b,hf(c),c.d.fireEvent("onMouseOverAnnotation",{na:c.f,mouseEvent:a}))):!c.ub&&c.f&&(c.ma=n,c.d.popup.startHideTimer())}else c.Ua=a});b.k("onMouseOutOfItem",function(){delete c.f;c.ma=j});b.k("beforePopupHide",function(){if(!c.ma&&c.Ua){var a=c.f;
208c.f=gf(c,c.Ua.offsetX,c.Ua.offsetY);c.ma=j;a!=c.f?(hf(c),c.d.fireEvent("onMouseOutOfAnnotation",{na:a,mouseEvent:c.Ua}),c.d.fireEvent("onMouseOverAnnotation",{na:c.f,mouseEvent:c.Ua})):c.f&&c.d.popup.clearHideTimer()}else hf(c)})}r=ef.prototype;r.z=function(a,b){b&&(b==this.f&&delete this.f,C(this.xa,b),delete this.U[Ed(b.shapes[0])]);this.xa.push(a);var c=a.shapes[0];if("pixel"!=c.units)var d=this,c=Dd(c,function(a){return d.d.kb(a)});this.U[Ed(a.shapes[0])]=c;hf(this)};
209r.w=function(a){a==this.f&&delete this.f;C(this.xa,a);delete this.U[Ed(a.shapes[0])];hf(this)};r.J=function(){return Ga(this.xa)};r.r=function(a){(this.f=a)?this.ub=j:this.d.popup.startHideTimer();hf(this);this.ma=j};function gf(a,b,c){a=a.lb(b,c);if(0<a.length)return a[0]}
210r.lb=function(a,b){var c=[],d=this;B(this.xa,function(f){var e;e=d.U[Ed(f.shapes[0])];if("rect"==e.type)e=a<e.geometry.x||b<e.geometry.y||a>e.geometry.x+e.geometry.width||b>e.geometry.y+e.geometry.height?n:j;else if("polygon"==e.type){e=e.geometry.points;for(var h=n,k=e.length-1,l=0;l<e.length;l++)e[l].y>b!=e[k].y>b&&a<(e[k].x-e[l].x)*(b-e[l].y)/(e[k].y-e[l].y)+e[l].x&&(h=!h),k=l;e=h}else e=n;e&&c.push(f)});z.sort.call(c,function(a,b){var c=d.U[Ed(a.shapes[0])],k=d.U[Ed(b.shapes[0])];return Ad(c)-
211Ad(k)}||Ja);return c};function jf(a,b,c){var d=Ea(a.d.ra(),function(a){return a.getSupportedShapeType()==b.type});d?d.drawShape(a.F,b,c):console.log("WARNING unsupported shape type: "+b.type)}function hf(a){a.F.clearRect(0,0,a.T.width,a.T.height);B(a.xa,function(b){b!=a.f&&jf(a,a.U[Ed(b.shapes[0])])});if(a.f){var b=a.U[Ed(a.f.shapes[0])];jf(a,b,j);b=Bd(b).geometry;a.d.popup.show(a.f,new ud(b.x,b.y+b.height+5))}};var kf="ontouchstart"in window,df=!kf,lf=kf?"touchstart":"mousedown",mf=kf?"touchenter":"mouseover",ff=kf?"touchmove":"mousemove",nf=kf?"touchend":"mouseup",of=kf?"touchleave":"mouseout";function pf(a,b){var c=n;return c=!a.offsetX||!a.offsetY&&a.n.changedTouches?{x:a.n.changedTouches[0].clientX-pd(b).left,y:a.n.changedTouches[0].clientY-pd(b).top}:{x:a.offsetX,y:a.offsetY}};function qf(){}r=qf.prototype;r.init=function(a,b){this.Rb="#000000";this.Sb="#ffffff";this.Gc=i;this.Ic="#fff000";this.Hc=i;this.T=b;this.d=a;this.F=b.getContext("2d");this.F.lineWidth=1;this.Zb=n};
212r.Tb=function(){var a=this,b=this.T;this.bc=O(this.T,ff,function(c){c=pf(c,b);if(a.Zb){a.H={x:c.x,y:c.y};a.F.clearRect(0,0,b.width,b.height);var c=a.H.x-a.j.x,d=a.H.y-a.j.y;a.F.strokeStyle=a.Rb;a.F.strokeRect(a.j.x+0.5,a.j.y+0.5,c,d);a.F.strokeStyle=a.Sb;0<c&&0<d?a.F.strokeRect(a.j.x+1.5,a.j.y+1.5,c-2,d-2):0<c&&0>d?a.F.strokeRect(a.j.x+1.5,a.j.y-0.5,c-2,d+2):0>c&&0>d?a.F.strokeRect(a.j.x-0.5,a.j.y-0.5,c+2,d+2):a.F.strokeRect(a.j.x-0.5,a.j.y+1.5,c+2,d-2)}});this.cc=O(b,nf,function(c){var d=pf(c,b),
213f=a.getShape(),c=c.n?c.n:c;a.Zb=n;f?(a.tb(),a.d.fireEvent("onSelectionCompleted",{mouseEvent:c,shape:f,viewportBounds:a.getViewportBounds()})):(a.d.fireEvent("onSelectionCanceled"),c=a.d.lb(d.x,d.y),0<c.length&&a.d.r(c[0]))})};r.tb=function(){this.bc&&(P(this.bc),delete this.bc);this.cc&&(P(this.cc),delete this.cc)};r.getName=ba("rect_drag");r.getSupportedShapeType=ba("rect");
214r.Z=function(a){a.outline&&(this.Rb=a.outline);a.stroke&&(this.Sb=a.stroke);a.fill&&(this.Gc=a.fill);a.hi_stroke&&(this.Ic=a.hi_stroke);a.hi_fill&&(this.Hc=a.hi_fill)};r.startSelection=function(a,b){var c={x:a,y:b};this.Zb=j;this.Tb(c);this.j=new ud(a,b);this.d.fireEvent("onSelectionStarted",{offsetX:a,offsetY:b});S(document.body,"-webkit-user-select","none")};r.stopSelection=function(){this.tb();this.F.clearRect(0,0,this.T.width,this.T.height);S(document.body,"-webkit-user-select","auto");delete this.H};
215r.getShape=function(){if(this.H&&3<Math.abs(this.H.x-this.j.x)&&3<Math.abs(this.H.y-this.j.y)){var a=this.getViewportBounds(),b=this.d.Pb({x:a.left,y:a.top}),a=this.d.Pb({x:a.right-1,y:a.bottom-1});return new zd("rect",new yd(b.x,b.y,a.x-b.x,a.y-b.y))}};r.getViewportBounds=function(){var a,b;this.H.x>this.j.x?(a=this.H.x,b=this.j.x):(a=this.j.x,b=this.H.x);var c,d;this.H.y>this.j.y?(c=this.j.y,d=this.H.y):(c=this.H.y,d=this.j.y);return{top:c,right:a,bottom:d,left:b}};
216r.drawShape=function(a,b,c){var d;"rect"==b.type&&(c?(a.lineWidth=1.2,c=this.Ic,d=this.Hc):(a.lineWidth=1,c=this.Sb,d=this.Gc),b=b.geometry,a.strokeStyle=this.Rb,a.strokeRect(b.x+0.5,b.y+0.5,b.width+1,b.height+1),a.strokeStyle=c,a.strokeRect(b.x+1.5,b.y+1.5,b.width-1,b.height-1),d&&(a.fillStyle=d,a.fillRect(b.x+1.5,b.y+1.5,b.width-1,b.height-1)))};function rf(a){return'<canvas class="annotorious-item annotorious-opacity-fade" style="position:absolute; top:0px; left:0px; width:'+Te(a.width)+"px; height:"+Te(a.height)+'px; z-index:0" width="'+Te(a.width)+'" height="'+Te(a.height)+'"></canvas>'}
217function af(a){return'<div class="annotorious-hint" style="white-space:nowrap; position:absolute; top:0px; left:0px; pointer-events:none;"><div class="annotorious-hint-msg annotorious-opacity-fade">'+Te(a.vc)+'</div><div class="annotorious-hint-icon" style="pointer-events:auto"></div></div>'};function sf(a,b){function c(b,c){S(d,"margin-"+b,c+"px");S(a,"margin-"+b,0);S(a,"padding-"+b,0)}this.ba=a;this.Qc={padding:a.style.padding,margin:a.style.margin};this.v=new qd;this.Da=[];this.fc=j;this.element=vb("div","annotorious-annotationlayer");S(this.element,"position","relative");S(this.element,"display","inline-block");var d=this.element,f=cd(a,"margin"),e=cd(a,"padding");(0!=f.top||0!=e.top)&&c("top",f.top+e.top);(0!=f.right||0!=e.right)&&c("right",f.right+e.right);(0!=f.bottom||0!=e.bottom)&&
218c("bottom",f.bottom+e.bottom);(0!=f.left||0!=e.left)&&c("left",f.left+e.left);(f=a.parentNode)&&f.replaceChild(this.element,a);this.element.appendChild(a);f=Zc(a);this.da=Od(rf,{width:f.width,height:f.height});df&&ib(this.da,"annotorious-item-unfocus");this.element.appendChild(this.da);this.e=Od(rf,{width:f.width,height:f.height});df&&V(this.e,n);this.element.appendChild(this.e);this.popup=b?b:new cf(this);f=new qf;f.init(this,this.e);this.Da.push(f);this.Aa=f;this.editor=new Ze(this);this.l=new ef(this.da,
219this);this.Xa=new $e(this,this.element);var h=this;df&&(O(this.element,mf,function(a){a=a.relatedTarget;if(!a||!Ab(h.element,a))h.v.fireEvent("onMouseOverItem"),mb(h.da,"annotorious-item-unfocus","annotorious-item-focus")}),O(this.element,of,function(a){a=a.relatedTarget;if(!a||!Ab(h.element,a))h.v.fireEvent("onMouseOutOfItem"),mb(h.da,"annotorious-item-focus","annotorious-item-unfocus")}));var k=kf?this.e:this.da;O(k,lf,function(a){a=pf(a,k);h.l.r(i);h.fc?(V(h.e,j),h.Aa.startSelection(a.x,a.y)):
220(a=h.l.lb(a.x,a.y),0<a.length&&h.l.r(a[0]))});this.v.k("onSelectionCompleted",function(a){var b=a.viewportBounds;h.editor.setPosition(new ud(b.left+h.ba.offsetLeft,b.bottom+4+h.ba.offsetTop));h.editor.open(i,a)});this.v.k("onSelectionCanceled",function(){df&&V(h.e,n);h.Aa.stopSelection()})}r=sf.prototype;r.ea=aa();r.z=function(a,b){this.l.z(a,b)};r.k=function(a,b){this.v.k(a,b)};r.Sc=function(a){a.init(this,this.e);this.Da.push(a)};
221r.R=function(){var a=this.ba;a.style.margin=this.Qc.margin;a.style.padding=this.Qc.padding;var b=this.element,c=b.parentNode;c&&c.replaceChild(a,b)};
222r.$c=function(a){this.l.w(a);var b=Ea(this.Da,function(b){return b.getSupportedShapeType()==a.shapes[0].type});if(b){V(this.e,j);this.l.r(i);var c=this.e.getContext("2d"),d=a.shapes[0],f=this,d="pixel"==d.units?d:Dd(d,function(a){return f.kb(a)});b.drawShape(c,d)}b=Bd(a.shapes[0]).geometry;b="pixel"==a.shapes[0].units?new ud(b.x,b.y+b.height):this.kb(new ud(b.x,b.y+b.height));this.editor.setPosition(new ud(b.x+this.ba.offsetLeft,b.y+4+this.ba.offsetTop));this.editor.open(a)};
223r.fireEvent=function(a,b){return this.v.fireEvent(a,b)};r.kb=function(a){var b=Xc(this.ba);return{x:a.x*b.width,y:a.y*b.height}};r.qa=p("Aa");r.J=function(){return this.l.J()};r.lb=function(a,b){return Ga(this.l.lb(a,b))};r.ra=p("Da");r.getItem=function(){return{src:tf(this.ba)}};function tf(a){var b=a.getAttribute("data-original");return b?b:a.src}r.X=function(){V(this.da,n)};r.O=function(){this.fc=n;this.Xa&&(this.Xa.R(),delete this.Xa)};r.r=function(a){this.l.r(a)};r.w=function(a){this.l.w(a)};
224r.Ra=function(a,b){this.v.Ra(a,b)};r.be=function(a){(this.Aa=Ea(this.Da,function(b){return b.getName()==a}))||console.log('WARNING: selector "'+a+'" not available')};r.Z=function(a){B(this.Da,function(b){b.Z(a)});hf(this.l)};r.wa=function(){V(this.da,j)};r.$=function(){this.fc=j;this.Xa||(this.Xa=new $e(this,this.element))};r.stopSelection=function(a){df&&V(this.e,n);this.Aa.stopSelection();a&&this.l.z(a)};r.Pb=function(a){var b=Xc(this.ba);return{x:a.x/b.width,y:a.y/b.height}};
225sf.prototype.addSelector=sf.prototype.Sc;sf.prototype.fireEvent=sf.prototype.fireEvent;sf.prototype.setCurrentSelector=sf.prototype.be;sf.prototype.toItemCoordinates=sf.prototype.Pb;function uf(){Hd(this,function(){return M("img.annotatable",document)})}v(uf,Gd);uf.prototype.mc=function(a){return tf(a)};uf.prototype.yd=function(a){return new sf(a)};uf.prototype.Dc=function(a){return zb(a)?"IMG"==a.tagName:n};function vf(a){return'<div class="annotorious-opacity-fade" style="white-space:nowrap; position:absolute; pointer-events:none; top:80px; width:100%; text-align:center;"><div class="annotorious-ol-hint" style="width: 400px; margin:0px auto;">'+Te(a.vc)+"</dvi></div>"};function wf(a,b){this.ca=a;this.Ya=Zc(b.element);this.Q=b.popup;S(this.Q.element,"z-index",99E3);this.Za=[];this.Ub=new OpenLayers.Layer.Boxes("Annotorious");this.ca.addLayer(this.Ub);var c=this;this.ca.events.register("move",this.ca,function(){c.Ba&&xf(c)});b.k("beforePopupHide",function(){c.ac==c.Ba?c.Q.clearHideTimer():yf(c,c.ac,c.Ba)})}
226function xf(a){var b=a.Ba.Hb.div,c=Zc(b),d=Tc(b,a.ca.div),b=d.y,d=d.x,f=c.width,e=c.height,c=Zc(a.Q.element),b={y:b+e+5};d+c.width>a.Ya.width?(mb(a.Q.element,"top-left","top-right"),b.x=d+f-c.width):(mb(a.Q.element,"top-right","top-left"),b.x=d);0>b.x&&(b.x=0);b.x+c.width>a.Ya.width&&(b.x=a.Ya.width-c.width);b.y+c.height>a.Ya.height&&(b.y=a.Ya.height-c.height);a.Q.setPosition(b)}
227function yf(a,b,c){b?(Tc(b.Hb.div,a.ca.div),za("height"),S(b.qd,"border-color","#fff000"),a.Ba=b,a.Q.setAnnotation(b.na),xf(a),a.Q.show()):delete a.Ba;c&&S(c.qd,"border-color","#fff")}
228wf.prototype.z=function(a){var b=a.shapes[0].geometry,b=new OpenLayers.Marker.Box(new OpenLayers.Bounds(b.x,b.y,b.x+b.width,b.y+b.height));ib(b.div,"annotorious-ol-boxmarker-outer");S(b.div,"border",m);var c=vb("div","annotorious-ol-boxmarker-inner");Wc(c,"100%","100%");b.div.appendChild(c);var d={na:a,Hb:b,qd:c},f=this;O(c,"mouseover",function(){f.Ba||yf(f,d);f.ac=d});O(c,"mouseout",function(){delete f.ac;f.Q.startHideTimer()});this.Za.push(d);z.sort.call(this.Za,function(a,b){return Ad(b.na.shapes[0])-
229Ad(a.na.shapes[0])}||Ja);var e=1E4;B(this.Za,function(a){S(a.Hb.div,"z-index",e);e++});this.Ub.addMarker(b)};wf.prototype.w=function(a){var b=Ea(this.Za,function(b){return b.na==a});b&&(C(this.Za,b),this.Ub.removeMarker(b.Hb))};wf.prototype.J=aa();wf.prototype.r=function(a){a||this.Q.startHideTimer()};function zf(a){function b(){var a=parseInt(T(d.element,"width"),10),b=parseInt(T(d.element,"height"),10);Wc(d.e,a,b);d.e.width=a;d.e.height=b}this.ca=a;this.element=a.div;var c=this.element.style[za("position")]||"";"absolute"!=c&&"relative"!=c&&S(this.element,"position","relative");this.v=new qd;this.bb=Od(vf,{vc:"Click and Drag"});S(this.bb,"z-index",9998);U(this.bb,0);this.element.appendChild(this.bb);this.popup=new cf(this);this.l=new wf(a,this);this.e=Od(rf,{width:"0",height:"0"});V(this.e,n);
230S(this.e,"position","absolute");S(this.e,"top","0px");S(this.e,"z-index",9999);this.element.appendChild(this.e);var d=this;b();this.cb=new qf;this.cb.init(this,this.e);this.vb=i;this.editor=new Ze(this);S(this.editor.element,"z-index",1E4);window.addEventListener?window.addEventListener("resize",b,n):window.attachEvent&&window.attachEvent("onresize",b);O(this.element,"mouseover",function(a){a=a.relatedTarget;(!a||!Ab(d.element,a))&&d.v.fireEvent("onMouseOverItem")});O(this.element,"mouseout",function(a){a=
231a.relatedTarget;(!a||!Ab(d.element,a))&&d.v.fireEvent("onMouseOutOfItem")});O(this.e,"mousedown",function(a){var b=Uc(d.element);d.cb.startSelection(a.clientX-b.x,a.clientY-b.y)});this.v.k("onSelectionCompleted",function(a){S(d.e,"pointer-events","none");a=a.viewportBounds;d.editor.setPosition(new ud(a.left,a.bottom+4));d.editor.open()});this.v.k("onSelectionCanceled",function(){d.stopSelection()})}r=zf.prototype;r.$=aa();r.O=aa();
232r.ea=function(a){S(this.e,"pointer-events","auto");var b=this;V(this.e,j);U(this.bb,0.8);window.setTimeout(function(){U(b.bb,0)},2E3);a&&(this.vb=a)};r.$c=function(a){this.l.w(a);var b=this.cb,c=this;if(b){V(this.e,j);this.l.r(i);var d=this.e.getContext("2d"),f=Dd(a.shapes[0],function(a){return c.kb(a)});b.drawShape(d,f);b=Bd(f).geometry;this.editor.setPosition(new ud(b.x+this.element.offsetLeft,b.y+b.height+4+this.element.offsetTop));this.editor.open(a)}};r.z=function(a){this.l.z(a)};
233r.k=function(a,b){this.v.k(a,b)};r.Sc=aa();r.fireEvent=function(a,b){return this.v.fireEvent(a,b)};r.kb=function(a){a=this.ca.getViewPortPxFromLonLat(new OpenLayers.LonLat(a.x,a.y));return{x:a.x,y:a.y}};r.qa=p("cb");r.J=aa();r.ra=aa();r.getItem=function(){return{src:"map://openlayers/something"}};r.r=function(a){this.l.r(a)};r.w=function(a){this.l.w(a)};r.Ra=function(a,b){this.v.Ra(a,b)};r.qb=aa();
234r.stopSelection=function(a){V(this.e,n);this.vb&&(this.vb(),delete this.vb);this.cb.stopSelection();a&&this.l.z(a)};r.Pb=function(a){a=this.ca.getLonLatFromPixel(new OpenLayers.Pixel(a.x,a.y));return{x:a.lon,y:a.lat}};function Af(){Hd(this)}v(Af,Gd);Af.prototype.mc=ba("map://openlayers/something");Af.prototype.yd=function(a){return new zf(a)};Af.prototype.Dc=function(a){return a instanceof OpenLayers.Map};function Z(){function a(){B(b.o,function(a){a.init()});B(b.$a,function(a){a.initPlugin&&a.initPlugin(b);B(b.o,function(b){b.wb(a)})})}this.o=[new uf];window.OpenLayers&&this.o.push(new Af);this.$a=[];var b=this;window.addEventListener?window.addEventListener("load",a,n):window.attachEvent&&window.attachEvent("onload",a)}function $(a,b){return Ea(a.o,function(a){return Nd(a,b)})}r=Z.prototype;
235r.ea=function(a,b){var c=i,d=i;t(a)?(c=a,d=b):u(a)&&(d=a);if(c){var f=$(this,c);f&&f.ea(c,d)}else B(this.o,function(a){a.ea(d)})};r.z=function(a,b){var c;c=a.src;if(!(0<c.indexOf("://"))){var d=document.createElement("a");d.href=c;c=d.protocol+"//"+d.host+d.pathname}a.src=c;(c=$(this,a.src))&&c.z(a,b)};r.k=function(a,b){B(this.o,function(c){c.k(a,b)})};
236r.wb=function(a,b){try{var c=new window.annotorious.plugin[a](b);"complete"==document.readyState?(c.initPlugin&&c.initPlugin(this),B(this.o,function(a){a.wb(c)})):this.$a.push(c)}catch(d){console.log("Could not load plugin: "+a)}};r.R=function(a){if(a){var b=$(this,a);b&&b.R(a)}else B(this.o,function(a){a.R()})};r.qa=function(a){var b=$(this,a);if(b)return b.qa(a)};r.J=function(a){if(a){var b=$(this,a);return b?b.J(a):[]}var c=[];B(this.o,function(a){Ha(c,a.J())});return c};
237r.ra=function(a){var b=$(this,a);return b?b.ra(a):[]};r.X=function(a){if(a){var b=$(this,a);b&&b.X(a)}else B(this.o,function(a){a.X()})};r.O=function(a){if(a){var b=$(this,a);b&&b.O(a)}else B(this.o,function(a){a.O()})};r.r=function(a){if(a){var b=$(this,a.src);b&&b.r(a)}else B(this.o,function(a){a.r()})};r.tc=function(a){var b=Ea(this.o,function(b){return b.Dc(a)});b?b.tc(a):g("Error: Annotorious does not support this media type in the current version or build configuration.")};
238r.Mb=function(a){var b=this;B(this.J(a),function(a){b.w(a)})};r.w=function(a){var b=$(this,a.src);b&&b.w(a)};r.reset=function(){B(this.o,function(a){a.R();a.init()})};r.qb=function(a,b){var c=$(this,a);c&&c.qb(a,b)};r.Z=function(a){B(this.o,function(b){b.Z(a)})};r.ce=function(a){a?this.$(i):this.O(i)};r.wa=function(a){if(a){var b=$(this,a);b&&b.wa(a)}else B(this.o,function(a){a.wa()})};r.$=function(a){if(a){var b=$(this,a);b&&b.$(a)}else B(this.o,function(a){a.$()})};window.anno=new Z;Z.prototype.activateSelector=Z.prototype.ea;Z.prototype.addAnnotation=Z.prototype.z;Z.prototype.addHandler=Z.prototype.k;Z.prototype.addPlugin=Z.prototype.wb;Z.prototype.destroy=Z.prototype.R;Z.prototype.getActiveSelector=Z.prototype.qa;Z.prototype.getAnnotations=Z.prototype.J;Z.prototype.getAvailableSelectors=Z.prototype.ra;Z.prototype.hideAnnotations=Z.prototype.X;Z.prototype.hideSelectionWidget=Z.prototype.O;Z.prototype.highlightAnnotation=Z.prototype.r;Z.prototype.makeAnnotatable=Z.prototype.tc;
239Z.prototype.removeAll=Z.prototype.Mb;Z.prototype.removeAnnotation=Z.prototype.w;Z.prototype.reset=Z.prototype.reset;Z.prototype.setActiveSelector=Z.prototype.qb;Z.prototype.setProperties=Z.prototype.Z;Z.prototype.showAnnotations=Z.prototype.wa;Z.prototype.showSelectionWidget=Z.prototype.$;window.annotorious||(window.annotorious={});window.annotorious.plugin||(window.annotorious.plugin={});Z.prototype.setSelectionEnabled=Z.prototype.ce;
  
1(function(){var t=this;var e=t.Backbone;var i=[];var r=i.push;var s=i.slice;var n=i.splice;var a;if(typeof exports!=="undefined"){a=exports}else{a=t.Backbone={}}a.VERSION="1.0.0";var h=t._;if(!h&&typeof require!=="undefined")h=require("underscore");a.$=t.jQuery||t.Zepto||t.ender||t.$;a.noConflict=function(){t.Backbone=e;return this};a.emulateHTTP=false;a.emulateJSON=false;var o=a.Events={on:function(t,e,i){if(!l(this,"on",t,[e,i])||!e)return this;this._events||(this._events={});var r=this._events[t]||(this._events[t]=[]);r.push({callback:e,context:i,ctx:i||this});return this},once:function(t,e,i){if(!l(this,"once",t,[e,i])||!e)return this;var r=this;var s=h.once(function(){r.off(t,s);e.apply(this,arguments)});s._callback=e;return this.on(t,s,i)},off:function(t,e,i){var r,s,n,a,o,u,c,f;if(!this._events||!l(this,"off",t,[e,i]))return this;if(!t&&!e&&!i){this._events={};return this}a=t?[t]:h.keys(this._events);for(o=0,u=a.length;o<u;o++){t=a[o];if(n=this._events[t]){this._events[t]=r=[];if(e||i){for(c=0,f=n.length;c<f;c++){s=n[c];if(e&&e!==s.callback&&e!==s.callback._callback||i&&i!==s.context){r.push(s)}}}if(!r.length)delete this._events[t]}}return this},trigger:function(t){if(!this._events)return this;var e=s.call(arguments,1);if(!l(this,"trigger",t,e))return this;var i=this._events[t];var r=this._events.all;if(i)c(i,e);if(r)c(r,arguments);return this},stopListening:function(t,e,i){var r=this._listeners;if(!r)return this;var s=!e&&!i;if(typeof e==="object")i=this;if(t)(r={})[t._listenerId]=t;for(var n in r){r[n].off(e,i,this);if(s)delete this._listeners[n]}return this}};var u=/\s+/;var l=function(t,e,i,r){if(!i)return true;if(typeof i==="object"){for(var s in i){t[e].apply(t,[s,i[s]].concat(r))}return false}if(u.test(i)){var n=i.split(u);for(var a=0,h=n.length;a<h;a++){t[e].apply(t,[n[a]].concat(r))}return false}return true};var c=function(t,e){var i,r=-1,s=t.length,n=e[0],a=e[1],h=e[2];switch(e.length){case 0:while(++r<s)(i=t[r]).callback.call(i.ctx);return;case 1:while(++r<s)(i=t[r]).callback.call(i.ctx,n);return;case 2:while(++r<s)(i=t[r]).callback.call(i.ctx,n,a);return;case 3:while(++r<s)(i=t[r]).callback.call(i.ctx,n,a,h);return;default:while(++r<s)(i=t[r]).callback.apply(i.ctx,e)}};var f={listenTo:"on",listenToOnce:"once"};h.each(f,function(t,e){o[e]=function(e,i,r){var s=this._listeners||(this._listeners={});var n=e._listenerId||(e._listenerId=h.uniqueId("l"));s[n]=e;if(typeof i==="object")r=this;e[t](i,r,this);return this}});o.bind=o.on;o.unbind=o.off;h.extend(a,o);var d=a.Model=function(t,e){var i;var r=t||{};e||(e={});this.cid=h.uniqueId("c");this.attributes={};h.extend(this,h.pick(e,p));if(e.parse)r=this.parse(r,e)||{};if(i=h.result(this,"defaults")){r=h.defaults({},r,i)}this.set(r,e);this.changed={};this.initialize.apply(this,arguments)};var p=["url","urlRoot","collection"];h.extend(d.prototype,o,{changed:null,validationError:null,idAttribute:"id",initialize:function(){},toJSON:function(t){return h.clone(this.attributes)},sync:function(){return a.sync.apply(this,arguments)},get:function(t){return this.attributes[t]},escape:function(t){return h.escape(this.get(t))},has:function(t){return this.get(t)!=null},set:function(t,e,i){var r,s,n,a,o,u,l,c;if(t==null)return this;if(typeof t==="object"){s=t;i=e}else{(s={})[t]=e}i||(i={});if(!this._validate(s,i))return false;n=i.unset;o=i.silent;a=[];u=this._changing;this._changing=true;if(!u){this._previousAttributes=h.clone(this.attributes);this.changed={}}c=this.attributes,l=this._previousAttributes;if(this.idAttribute in s)this.id=s[this.idAttribute];for(r in s){e=s[r];if(!h.isEqual(c[r],e))a.push(r);if(!h.isEqual(l[r],e)){this.changed[r]=e}else{delete this.changed[r]}n?delete c[r]:c[r]=e}if(!o){if(a.length)this._pending=true;for(var f=0,d=a.length;f<d;f++){this.trigger("change:"+a[f],this,c[a[f]],i)}}if(u)return this;if(!o){while(this._pending){this._pending=false;this.trigger("change",this,i)}}this._pending=false;this._changing=false;return this},unset:function(t,e){return this.set(t,void 0,h.extend({},e,{unset:true}))},clear:function(t){var e={};for(var i in this.attributes)e[i]=void 0;return this.set(e,h.extend({},t,{unset:true}))},hasChanged:function(t){if(t==null)return!h.isEmpty(this.changed);return h.has(this.changed,t)},changedAttributes:function(t){if(!t)return this.hasChanged()?h.clone(this.changed):false;var e,i=false;var r=this._changing?this._previousAttributes:this.attributes;for(var s in t){if(h.isEqual(r[s],e=t[s]))continue;(i||(i={}))[s]=e}return i},previous:function(t){if(t==null||!this._previousAttributes)return null;return this._previousAttributes[t]},previousAttributes:function(){return h.clone(this._previousAttributes)},fetch:function(t){t=t?h.clone(t):{};if(t.parse===void 0)t.parse=true;var e=this;var i=t.success;t.success=function(r){if(!e.set(e.parse(r,t),t))return false;if(i)i(e,r,t);e.trigger("sync",e,r,t)};R(this,t);return this.sync("read",this,t)},save:function(t,e,i){var r,s,n,a=this.attributes;if(t==null||typeof t==="object"){r=t;i=e}else{(r={})[t]=e}if(r&&(!i||!i.wait)&&!this.set(r,i))return false;i=h.extend({validate:true},i);if(!this._validate(r,i))return false;if(r&&i.wait){this.attributes=h.extend({},a,r)}if(i.parse===void 0)i.parse=true;var o=this;var u=i.success;i.success=function(t){o.attributes=a;var e=o.parse(t,i);if(i.wait)e=h.extend(r||{},e);if(h.isObject(e)&&!o.set(e,i)){return false}if(u)u(o,t,i);o.trigger("sync",o,t,i)};R(this,i);s=this.isNew()?"create":i.patch?"patch":"update";if(s==="patch")i.attrs=r;n=this.sync(s,this,i);if(r&&i.wait)this.attributes=a;return n},destroy:function(t){t=t?h.clone(t):{};var e=this;var i=t.success;var r=function(){e.trigger("destroy",e,e.collection,t)};t.success=function(s){if(t.wait||e.isNew())r();if(i)i(e,s,t);if(!e.isNew())e.trigger("sync",e,s,t)};if(this.isNew()){t.success();return false}R(this,t);var s=this.sync("delete",this,t);if(!t.wait)r();return s},url:function(){var t=h.result(this,"urlRoot")||h.result(this.collection,"url")||U();if(this.isNew())return t;return t+(t.charAt(t.length-1)==="/"?"":"/")+encodeURIComponent(this.id)},parse:function(t,e){return t},clone:function(){return new this.constructor(this.attributes)},isNew:function(){return this.id==null},isValid:function(t){return this._validate({},h.extend(t||{},{validate:true}))},_validate:function(t,e){if(!e.validate||!this.validate)return true;t=h.extend({},this.attributes,t);var i=this.validationError=this.validate(t,e)||null;if(!i)return true;this.trigger("invalid",this,i,h.extend(e||{},{validationError:i}));return false}});var v=["keys","values","pairs","invert","pick","omit"];h.each(v,function(t){d.prototype[t]=function(){var e=s.call(arguments);e.unshift(this.attributes);return h[t].apply(h,e)}});var g=a.Collection=function(t,e){e||(e={});if(e.url)this.url=e.url;if(e.model)this.model=e.model;if(e.comparator!==void 0)this.comparator=e.comparator;this._reset();this.initialize.apply(this,arguments);if(t)this.reset(t,h.extend({silent:true},e))};var m={add:true,remove:true,merge:true};var y={add:true,merge:false,remove:false};h.extend(g.prototype,o,{model:d,initialize:function(){},toJSON:function(t){return this.map(function(e){return e.toJSON(t)})},sync:function(){return a.sync.apply(this,arguments)},add:function(t,e){return this.set(t,h.defaults(e||{},y))},remove:function(t,e){t=h.isArray(t)?t.slice():[t];e||(e={});var i,r,s,n;for(i=0,r=t.length;i<r;i++){n=this.get(t[i]);if(!n)continue;delete this._byId[n.id];delete this._byId[n.cid];s=this.indexOf(n);this.models.splice(s,1);this.length--;if(!e.silent){e.index=s;n.trigger("remove",n,this,e)}this._removeReference(n)}return this},set:function(t,e){e=h.defaults(e||{},m);if(e.parse)t=this.parse(t,e);if(!h.isArray(t))t=t?[t]:[];var i,s,a,o,u,l;var c=e.at;var f=this.comparator&&c==null&&e.sort!==false;var d=h.isString(this.comparator)?this.comparator:null;var p=[],v=[],g={};for(i=0,s=t.length;i<s;i++){if(!(a=this._prepareModel(t[i],e)))continue;if(u=this.get(a)){if(e.remove)g[u.cid]=true;if(e.merge){u.set(a.attributes,e);if(f&&!l&&u.hasChanged(d))l=true}}else if(e.add){p.push(a);a.on("all",this._onModelEvent,this);this._byId[a.cid]=a;if(a.id!=null)this._byId[a.id]=a}}if(e.remove){for(i=0,s=this.length;i<s;++i){if(!g[(a=this.models[i]).cid])v.push(a)}if(v.length)this.remove(v,e)}if(p.length){if(f)l=true;this.length+=p.length;if(c!=null){n.apply(this.models,[c,0].concat(p))}else{r.apply(this.models,p)}}if(l)this.sort({silent:true});if(e.silent)return this;for(i=0,s=p.length;i<s;i++){(a=p[i]).trigger("add",a,this,e)}if(l)this.trigger("sort",this,e);return this},reset:function(t,e){e||(e={});for(var i=0,r=this.models.length;i<r;i++){this._removeReference(this.models[i])}e.previousModels=this.models;this._reset();this.add(t,h.extend({silent:true},e));if(!e.silent)this.trigger("reset",this,e);return this},push:function(t,e){t=this._prepareModel(t,e);this.add(t,h.extend({at:this.length},e));return t},pop:function(t){var e=this.at(this.length-1);this.remove(e,t);return e},unshift:function(t,e){t=this._prepareModel(t,e);this.add(t,h.extend({at:0},e));return t},shift:function(t){var e=this.at(0);this.remove(e,t);return e},slice:function(t,e){return this.models.slice(t,e)},get:function(t){if(t==null)return void 0;return this._byId[t.id!=null?t.id:t.cid||t]},at:function(t){return this.models[t]},where:function(t,e){if(h.isEmpty(t))return e?void 0:[];return this[e?"find":"filter"](function(e){for(var i in t){if(t[i]!==e.get(i))return false}return true})},findWhere:function(t){return this.where(t,true)},sort:function(t){if(!this.comparator)throw new Error("Cannot sort a set without a comparator");t||(t={});if(h.isString(this.comparator)||this.comparator.length===1){this.models=this.sortBy(this.comparator,this)}else{this.models.sort(h.bind(this.comparator,this))}if(!t.silent)this.trigger("sort",this,t);return this},sortedIndex:function(t,e,i){e||(e=this.comparator);var r=h.isFunction(e)?e:function(t){return t.get(e)};return h.sortedIndex(this.models,t,r,i)},pluck:function(t){return h.invoke(this.models,"get",t)},fetch:function(t){t=t?h.clone(t):{};if(t.parse===void 0)t.parse=true;var e=t.success;var i=this;t.success=function(r){var s=t.reset?"reset":"set";i[s](r,t);if(e)e(i,r,t);i.trigger("sync",i,r,t)};R(this,t);return this.sync("read",this,t)},create:function(t,e){e=e?h.clone(e):{};if(!(t=this._prepareModel(t,e)))return false;if(!e.wait)this.add(t,e);var i=this;var r=e.success;e.success=function(s){if(e.wait)i.add(t,e);if(r)r(t,s,e)};t.save(null,e);return t},parse:function(t,e){return t},clone:function(){return new this.constructor(this.models)},_reset:function(){this.length=0;this.models=[];this._byId={}},_prepareModel:function(t,e){if(t instanceof d){if(!t.collection)t.collection=this;return t}e||(e={});e.collection=this;var i=new this.model(t,e);if(!i._validate(t,e)){this.trigger("invalid",this,t,e);return false}return i},_removeReference:function(t){if(this===t.collection)delete t.collection;t.off("all",this._onModelEvent,this)},_onModelEvent:function(t,e,i,r){if((t==="add"||t==="remove")&&i!==this)return;if(t==="destroy")this.remove(e,r);if(e&&t==="change:"+e.idAttribute){delete this._byId[e.previous(e.idAttribute)];if(e.id!=null)this._byId[e.id]=e}this.trigger.apply(this,arguments)}});var _=["forEach","each","map","collect","reduce","foldl","inject","reduceRight","foldr","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","max","min","toArray","size","first","head","take","initial","rest","tail","drop","last","without","indexOf","shuffle","lastIndexOf","isEmpty","chain"];h.each(_,function(t){g.prototype[t]=function(){var e=s.call(arguments);e.unshift(this.models);return h[t].apply(h,e)}});var w=["groupBy","countBy","sortBy"];h.each(w,function(t){g.prototype[t]=function(e,i){var r=h.isFunction(e)?e:function(t){return t.get(e)};return h[t](this.models,r,i)}});var b=a.View=function(t){this.cid=h.uniqueId("view");this._configure(t||{});this._ensureElement();this.initialize.apply(this,arguments);this.delegateEvents()};var x=/^(\S+)\s*(.*)$/;var E=["model","collection","el","id","attributes","className","tagName","events"];h.extend(b.prototype,o,{tagName:"div",$:function(t){return this.$el.find(t)},initialize:function(){},render:function(){return this},remove:function(){this.$el.remove();this.stopListening();return this},setElement:function(t,e){if(this.$el)this.undelegateEvents();this.$el=t instanceof a.$?t:a.$(t);this.el=this.$el[0];if(e!==false)this.delegateEvents();return this},delegateEvents:function(t){if(!(t||(t=h.result(this,"events"))))return this;this.undelegateEvents();for(var e in t){var i=t[e];if(!h.isFunction(i))i=this[t[e]];if(!i)continue;var r=e.match(x);var s=r[1],n=r[2];i=h.bind(i,this);s+=".delegateEvents"+this.cid;if(n===""){this.$el.on(s,i)}else{this.$el.on(s,n,i)}}return this},undelegateEvents:function(){this.$el.off(".delegateEvents"+this.cid);return this},_configure:function(t){if(this.options)t=h.extend({},h.result(this,"options"),t);h.extend(this,h.pick(t,E));this.options=t},_ensureElement:function(){if(!this.el){var t=h.extend({},h.result(this,"attributes"));if(this.id)t.id=h.result(this,"id");if(this.className)t["class"]=h.result(this,"className");var e=a.$("<"+h.result(this,"tagName")+">").attr(t);this.setElement(e,false)}else{this.setElement(h.result(this,"el"),false)}}});a.sync=function(t,e,i){var r=k[t];h.defaults(i||(i={}),{emulateHTTP:a.emulateHTTP,emulateJSON:a.emulateJSON});var s={type:r,dataType:"json"};if(!i.url){s.url=h.result(e,"url")||U()}if(i.data==null&&e&&(t==="create"||t==="update"||t==="patch")){s.contentType="application/json";s.data=JSON.stringify(i.attrs||e.toJSON(i))}if(i.emulateJSON){s.contentType="application/x-www-form-urlencoded";s.data=s.data?{model:s.data}:{}}if(i.emulateHTTP&&(r==="PUT"||r==="DELETE"||r==="PATCH")){s.type="POST";if(i.emulateJSON)s.data._method=r;var n=i.beforeSend;i.beforeSend=function(t){t.setRequestHeader("X-HTTP-Method-Override",r);if(n)return n.apply(this,arguments)}}if(s.type!=="GET"&&!i.emulateJSON){s.processData=false}if(s.type==="PATCH"&&window.ActiveXObject&&!(window.external&&window.external.msActiveXFilteringEnabled)){s.xhr=function(){return new ActiveXObject("Microsoft.XMLHTTP")}}var o=i.xhr=a.ajax(h.extend(s,i));e.trigger("request",e,o,i);return o};var k={create:"POST",update:"PUT",patch:"PATCH","delete":"DELETE",read:"GET"};a.ajax=function(){return a.$.ajax.apply(a.$,arguments)};var S=a.Router=function(t){t||(t={});if(t.routes)this.routes=t.routes;this._bindRoutes();this.initialize.apply(this,arguments)};var $=/\((.*?)\)/g;var T=/(\(\?)?:\w+/g;var H=/\*\w+/g;var A=/[\-{}\[\]+?.,\\\^$|#\s]/g;h.extend(S.prototype,o,{initialize:function(){},route:function(t,e,i){if(!h.isRegExp(t))t=this._routeToRegExp(t);if(h.isFunction(e)){i=e;e=""}if(!i)i=this[e];var r=this;a.history.route(t,function(s){var n=r._extractParameters(t,s);i&&i.apply(r,n);r.trigger.apply(r,["route:"+e].concat(n));r.trigger("route",e,n);a.history.trigger("route",r,e,n)});return this},navigate:function(t,e){a.history.navigate(t,e);return this},_bindRoutes:function(){if(!this.routes)return;this.routes=h.result(this,"routes");var t,e=h.keys(this.routes);while((t=e.pop())!=null){this.route(t,this.routes[t])}},_routeToRegExp:function(t){t=t.replace(A,"\\$&").replace($,"(?:$1)?").replace(T,function(t,e){return e?t:"([^/]+)"}).replace(H,"(.*?)");return new RegExp("^"+t+"$")},_extractParameters:function(t,e){var i=t.exec(e).slice(1);return h.map(i,function(t){return t?decodeURIComponent(t):null})}});var I=a.History=function(){this.handlers=[];h.bindAll(this,"checkUrl");if(typeof window!=="undefined"){this.location=window.location;this.history=window.history}};var N=/^[#\/]|\s+$/g;var P=/^\/+|\/+$/g;var O=/msie [\w.]+/;var C=/\/$/;I.started=false;h.extend(I.prototype,o,{interval:50,getHash:function(t){var e=(t||this).location.href.match(/#(.*)$/);return e?e[1]:""},getFragment:function(t,e){if(t==null){if(this._hasPushState||!this._wantsHashChange||e){t=this.location.pathname;var i=this.root.replace(C,"");if(!t.indexOf(i))t=t.substr(i.length)}else{t=this.getHash()}}return t.replace(N,"")},start:function(t){if(I.started)throw new Error("Backbone.history has already been started");I.started=true;this.options=h.extend({},{root:"/"},this.options,t);this.root=this.options.root;this._wantsHashChange=this.options.hashChange!==false;this._wantsPushState=!!this.options.pushState;this._hasPushState=!!(this.options.pushState&&this.history&&this.history.pushState);var e=this.getFragment();var i=document.documentMode;var r=O.exec(navigator.userAgent.toLowerCase())&&(!i||i<=7);this.root=("/"+this.root+"/").replace(P,"/");if(r&&this._wantsHashChange){this.iframe=a.$('<iframe src="javascript:0" tabindex="-1" />').hide().appendTo("body")[0].contentWindow;this.navigate(e)}if(this._hasPushState){a.$(window).on("popstate",this.checkUrl)}else if(this._wantsHashChange&&"onhashchange"in window&&!r){a.$(window).on("hashchange",this.checkUrl)}else if(this._wantsHashChange){this._checkUrlInterval=setInterval(this.checkUrl,this.interval)}this.fragment=e;var s=this.location;var n=s.pathname.replace(/[^\/]$/,"$&/")===this.root;if(this._wantsHashChange&&this._wantsPushState&&!this._hasPushState&&!n){this.fragment=this.getFragment(null,true);this.location.replace(this.root+this.location.search+"#"+this.fragment);return true}else if(this._wantsPushState&&this._hasPushState&&n&&s.hash){this.fragment=this.getHash().replace(N,"");this.history.replaceState({},document.title,this.root+this.fragment+s.search)}if(!this.options.silent)return this.loadUrl()},stop:function(){a.$(window).off("popstate",this.checkUrl).off("hashchange",this.checkUrl);clearInterval(this._checkUrlInterval);I.started=false},route:function(t,e){this.handlers.unshift({route:t,callback:e})},checkUrl:function(t){var e=this.getFragment();if(e===this.fragment&&this.iframe){e=this.getFragment(this.getHash(this.iframe))}if(e===this.fragment)return false;if(this.iframe)this.navigate(e);this.loadUrl()||this.loadUrl(this.getHash())},loadUrl:function(t){var e=this.fragment=this.getFragment(t);var i=h.any(this.handlers,function(t){if(t.route.test(e)){t.callback(e);return true}});return i},navigate:function(t,e){if(!I.started)return false;if(!e||e===true)e={trigger:e};t=this.getFragment(t||"");if(this.fragment===t)return;this.fragment=t;var i=this.root+t;if(this._hasPushState){this.history[e.replace?"replaceState":"pushState"]({},document.title,i)}else if(this._wantsHashChange){this._updateHash(this.location,t,e.replace);if(this.iframe&&t!==this.getFragment(this.getHash(this.iframe))){if(!e.replace)this.iframe.document.open().close();this._updateHash(this.iframe.location,t,e.replace)}}else{return this.location.assign(i)}if(e.trigger)this.loadUrl(t)},_updateHash:function(t,e,i){if(i){var r=t.href.replace(/(javascript:|#).*$/,"");t.replace(r+"#"+e)}else{t.hash="#"+e}}});a.history=new I;var j=function(t,e){var i=this;var r;if(t&&h.has(t,"constructor")){r=t.constructor}else{r=function(){return i.apply(this,arguments)}}h.extend(r,i,e);var s=function(){this.constructor=r};s.prototype=i.prototype;r.prototype=new s;if(t)h.extend(r.prototype,t);r.__super__=i.prototype;return r};d.extend=g.extend=S.extend=b.extend=I.extend=j;var U=function(){throw new Error('A "url" property or function must be specified')};var R=function(t,e){var i=e.error;e.error=function(r){if(i)i(t,r,e);t.trigger("error",t,r,e)}}}).call(this);
2/*
3//@ sourceMappingURL=backbone-min.map
4*/
  
1/**
2* bootstrap.js v3.0.0 by @fat and @mdo
3* Copyright 2013 Twitter Inc.
4* http://www.apache.org/licenses/LICENSE-2.0
5*/
6if(!jQuery)throw new Error("Bootstrap requires jQuery");+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]}}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one(a.support.transition.end,function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b()})}(window.jQuery),+function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function c(){f.trigger("closed.bs.alert").remove()}var d=a(this),e=d.attr("data-target");e||(e=d.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,""));var f=a(e);b&&b.preventDefault(),f.length||(f=d.hasClass("alert")?d:d.parent()),f.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one(a.support.transition.end,c).emulateTransitionEnd(150):c())};var d=a.fn.alert;a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("bs.alert");e||d.data("bs.alert",e=new c(this)),"string"==typeof b&&e[b].call(d)})},a.fn.alert.Constructor=c,a.fn.alert.noConflict=function(){return a.fn.alert=d,this},a(document).on("click.bs.alert.data-api",b,c.prototype.close)}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d)};b.DEFAULTS={loadingText:"loading..."},b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.is("input")?"val":"html",e=c.data();a+="Text",e.resetText||c.data("resetText",c[d]()),c[d](e[a]||this.options[a]),setTimeout(function(){"loadingText"==a?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.closest('[data-toggle="buttons"]');if(a.length){var b=this.$element.find("input").prop("checked",!this.$element.hasClass("active")).trigger("change");"radio"===b.prop("type")&&a.find(".active").removeClass("active")}this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof c&&c;e||d.data("bs.button",e=new b(this,f)),"toggle"==c?e.toggle():c&&e.setState(c)})},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.bs.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle"),b.preventDefault()})}(window.jQuery),+function(a){"use strict";var b=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=this.sliding=this.interval=this.$active=this.$items=null,"hover"==this.options.pause&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.DEFAULTS={interval:5e3,pause:"hover",wrap:!0},b.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},b.prototype.getActiveIndex=function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},b.prototype.to=function(b){var c=this,d=this.getActiveIndex();return b>this.$items.length-1||0>b?void 0:this.sliding?this.$element.one("slid",function(){c.to(b)}):d==b?this.pause().cycle():this.slide(b>d?"next":"prev",a(this.$items[b]))},b.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition.end&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},b.prototype.next=function(){return this.sliding?void 0:this.slide("next")},b.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},b.prototype.slide=function(b,c){var d=this.$element.find(".item.active"),e=c||d[b](),f=this.interval,g="next"==b?"left":"right",h="next"==b?"first":"last",i=this;if(!e.length){if(!this.options.wrap)return;e=this.$element.find(".item")[h]()}this.sliding=!0,f&&this.pause();var j=a.Event("slide.bs.carousel",{relatedTarget:e[0],direction:g});if(!e.hasClass("active")){if(this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid",function(){var b=a(i.$indicators.children()[i.getActiveIndex()]);b&&b.addClass("active")})),a.support.transition&&this.$element.hasClass("slide")){if(this.$element.trigger(j),j.isDefaultPrevented())return;e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),d.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid")},0)}).emulateTransitionEnd(600)}else{if(this.$element.trigger(j),j.isDefaultPrevented())return;d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return f&&this.cycle(),this}};var c=a.fn.carousel;a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c),g="string"==typeof c?c:f.slide;e||d.data("bs.carousel",e=new b(this,f)),"number"==typeof c?e.to(c):g?e[g]():f.interval&&e.pause().cycle()})},a.fn.carousel.Constructor=b,a.fn.carousel.noConflict=function(){return a.fn.carousel=c,this},a(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",function(b){var c,d=a(this),e=a(d.attr("data-target")||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"")),f=a.extend({},e.data(),d.data()),g=d.attr("data-slide-to");g&&(f.interval=!1),e.carousel(f),(g=d.attr("data-slide-to"))&&e.data("bs.carousel").to(g),b.preventDefault()}),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var b=a(this);b.carousel(b.data())})})}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d),this.transitioning=null,this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.DEFAULTS={toggle:!0},b.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},b.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b=a.Event("show.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.$parent&&this.$parent.find("> .panel > .in");if(c&&c.length){var d=c.data("bs.collapse");if(d&&d.transitioning)return;c.collapse("hide"),d||c.data("bs.collapse",null)}var e=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[e](0),this.transitioning=1;var f=function(){this.$element.removeClass("collapsing").addClass("in")[e]("auto"),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return f.call(this);var g=a.camelCase(["scroll",e].join("-"));this.$element.one(a.support.transition.end,a.proxy(f,this)).emulateTransitionEnd(350)[e](this.$element[0][g])}}},b.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"),this.transitioning=1;var d=function(){this.transitioning=0,this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse")};return a.support.transition?(this.$element[c](0).one(a.support.transition.end,a.proxy(d,this)).emulateTransitionEnd(350),void 0):d.call(this)}}},b.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};var c=a.fn.collapse;a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("bs.collapse"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c);e||d.data("bs.collapse",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.collapse.Constructor=b,a.fn.collapse.noConflict=function(){return a.fn.collapse=c,this},a(document).on("click.bs.collapse.data-api","[data-toggle=collapse]",function(b){var c,d=a(this),e=d.attr("data-target")||b.preventDefault()||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),f=a(e),g=f.data("bs.collapse"),h=g?"toggle":d.data(),i=d.attr("data-parent"),j=i&&a(i);g&&g.transitioning||(j&&j.find('[data-toggle=collapse][data-parent="'+i+'"]').not(d).addClass("collapsed"),d[f.hasClass("in")?"addClass":"removeClass"]("collapsed")),f.collapse(h)})}(window.jQuery),+function(a){"use strict";function b(){a(d).remove(),a(e).each(function(b){var d=c(a(this));d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown")),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown"))})}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}var d=".dropdown-backdrop",e="[data-toggle=dropdown]",f=function(b){a(b).on("click.bs.dropdown",this.toggle)};f.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){if("ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click",b),f.trigger(d=a.Event("show.bs.dropdown")),d.isDefaultPrevented())return;f.toggleClass("open").trigger("shown.bs.dropdown"),e.focus()}return!1}},f.prototype.keydown=function(b){if(/(38|40|27)/.test(b.keyCode)){var d=a(this);if(b.preventDefault(),b.stopPropagation(),!d.is(".disabled, :disabled")){var f=c(d),g=f.hasClass("open");if(!g||g&&27==b.keyCode)return 27==b.which&&f.find(e).focus(),d.click();var h=a("[role=menu] li:not(.divider):visible a",f);if(h.length){var i=h.index(h.filter(":focus"));38==b.keyCode&&i>0&&i--,40==b.keyCode&&i<h.length-1&&i++,~i||(i=0),h.eq(i).focus()}}}};var g=a.fn.dropdown;a.fn.dropdown=function(b){return this.each(function(){var c=a(this),d=c.data("dropdown");d||c.data("dropdown",d=new f(this)),"string"==typeof b&&d[b].call(c)})},a.fn.dropdown.Constructor=f,a.fn.dropdown.noConflict=function(){return a.fn.dropdown=g,this},a(document).on("click.bs.dropdown.data-api",b).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",e,f.prototype.toggle).on("keydown.bs.dropdown.data-api",e+", [role=menu]",f.prototype.keydown)}(window.jQuery),+function(a){"use strict";var b=function(b,c){this.options=c,this.$element=a(b),this.$backdrop=this.isShown=null,this.options.remote&&this.$element.load(this.options.remote)};b.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},b.prototype.toggle=function(a){return this[this.isShown?"hide":"show"](a)},b.prototype.show=function(b){var c=this,d=a.Event("show.bs.modal",{relatedTarget:b});this.$element.trigger(d),this.isShown||d.isDefaultPrevented()||(this.isShown=!0,this.escape(),this.$element.on("click.dismiss.modal",'[data-dismiss="modal"]',a.proxy(this.hide,this)),this.backdrop(function(){var d=a.support.transition&&c.$element.hasClass("fade");c.$element.parent().length||c.$element.appendTo(document.body),c.$element.show(),d&&c.$element[0].offsetWidth,c.$element.addClass("in").attr("aria-hidden",!1),c.enforceFocus();var e=a.Event("shown.bs.modal",{relatedTarget:b});d?c.$element.find(".modal-dialog").one(a.support.transition.end,function(){c.$element.focus().trigger(e)}).emulateTransitionEnd(300):c.$element.focus().trigger(e)}))},b.prototype.hide=function(b){b&&b.preventDefault(),b=a.Event("hide.bs.modal"),this.$element.trigger(b),this.isShown&&!b.isDefaultPrevented()&&(this.isShown=!1,this.escape(),a(document).off("focusin.bs.modal"),this.$element.removeClass("in").attr("aria-hidden",!0).off("click.dismiss.modal"),a.support.transition&&this.$element.hasClass("fade")?this.$element.one(a.support.transition.end,a.proxy(this.hideModal,this)).emulateTransitionEnd(300):this.hideModal())},b.prototype.enforceFocus=function(){a(document).off("focusin.bs.modal").on("focusin.bs.modal",a.proxy(function(a){this.$element[0]===a.target||this.$element.has(a.target).length||this.$element.focus()},this))},b.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keyup.dismiss.bs.modal",a.proxy(function(a){27==a.which&&this.hide()},this)):this.isShown||this.$element.off("keyup.dismiss.bs.modal")},b.prototype.hideModal=function(){var a=this;this.$element.hide(),this.backdrop(function(){a.removeBackdrop(),a.$element.trigger("hidden.bs.modal")})},b.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},b.prototype.backdrop=function(b){var c=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var d=a.support.transition&&c;if(this.$backdrop=a('<div class="modal-backdrop '+c+'" />').appendTo(document.body),this.$element.on("click.dismiss.modal",a.proxy(function(a){a.target===a.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus.call(this.$element[0]):this.hide.call(this))},this)),d&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!b)return;d?this.$backdrop.one(a.support.transition.end,b).emulateTransitionEnd(150):b()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(a.support.transition.end,b).emulateTransitionEnd(150):b()):b&&b()};var c=a.fn.modal;a.fn.modal=function(c,d){return this.each(function(){var e=a(this),f=e.data("bs.modal"),g=a.extend({},b.DEFAULTS,e.data(),"object"==typeof c&&c);f||e.data("bs.modal",f=new b(this,g)),"string"==typeof c?f[c](d):g.show&&f.show(d)})},a.fn.modal.Constructor=b,a.fn.modal.noConflict=function(){return a.fn.modal=c,this},a(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(b){var c=a(this),d=c.attr("href"),e=a(c.attr("data-target")||d&&d.replace(/.*(?=#[^\s]+$)/,"")),f=e.data("modal")?"toggle":a.extend({remote:!/#/.test(d)&&d},e.data(),c.data());b.preventDefault(),e.modal(f,this).one("hide",function(){c.is(":visible")&&c.focus()})}),a(document).on("show.bs.modal",".modal",function(){a(document.body).addClass("modal-open")}).on("hidden.bs.modal",".modal",function(){a(document.body).removeClass("modal-open")})}(window.jQuery),+function(a){"use strict";var b=function(a,b){this.type=this.options=this.enabled=this.timeout=this.hoverState=this.$element=null,this.init("tooltip",a,b)};b.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1},b.prototype.init=function(b,c,d){this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d);for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focus",i="hover"==g?"mouseleave":"blur";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},b.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},b.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show),void 0):c.show()},b.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide),void 0):c.hide()},b.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){if(this.$element.trigger(b),b.isDefaultPrevented())return;var c=this.tip();this.setContent(),this.options.animation&&c.addClass("fade");var d="function"==typeof this.options.placement?this.options.placement.call(this,c[0],this.$element[0]):this.options.placement,e=/\s?auto?\s?/i,f=e.test(d);f&&(d=d.replace(e,"")||"top"),c.detach().css({top:0,left:0,display:"block"}).addClass(d),this.options.container?c.appendTo(this.options.container):c.insertAfter(this.$element);var g=this.getPosition(),h=c[0].offsetWidth,i=c[0].offsetHeight;if(f){var j=this.$element.parent(),k=d,l=document.documentElement.scrollTop||document.body.scrollTop,m="body"==this.options.container?window.innerWidth:j.outerWidth(),n="body"==this.options.container?window.innerHeight:j.outerHeight(),o="body"==this.options.container?0:j.offset().left;d="bottom"==d&&g.top+g.height+i-l>n?"top":"top"==d&&g.top-l-i<0?"bottom":"right"==d&&g.right+h>m?"left":"left"==d&&g.left-h<o?"right":d,c.removeClass(k).addClass(d)}var p=this.getCalculatedOffset(d,g,h,i);this.applyPlacement(p,d),this.$element.trigger("shown.bs."+this.type)}},b.prototype.applyPlacement=function(a,b){var c,d=this.tip(),e=d[0].offsetWidth,f=d[0].offsetHeight,g=parseInt(d.css("margin-top"),10),h=parseInt(d.css("margin-left"),10);isNaN(g)&&(g=0),isNaN(h)&&(h=0),a.top=a.top+g,a.left=a.left+h,d.offset(a).addClass("in");var i=d[0].offsetWidth,j=d[0].offsetHeight;if("top"==b&&j!=f&&(c=!0,a.top=a.top+f-j),/bottom|top/.test(b)){var k=0;a.left<0&&(k=-2*a.left,a.left=0,d.offset(a),i=d[0].offsetWidth,j=d[0].offsetHeight),this.replaceArrow(k-e+i,i,"left")}else this.replaceArrow(j-f,j,"top");c&&d.offset(a)},b.prototype.replaceArrow=function(a,b,c){this.arrow().css(c,a?50*(1-a/b)+"%":"")},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle();a.find(".tooltip-inner")[this.options.html?"html":"text"](b),a.removeClass("fade in top bottom left right")},b.prototype.hide=function(){function b(){"in"!=c.hoverState&&d.detach()}var c=this,d=this.tip(),e=a.Event("hide.bs."+this.type);return this.$element.trigger(e),e.isDefaultPrevented()?void 0:(d.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d.one(a.support.transition.end,b).emulateTransitionEnd(150):b(),this.$element.trigger("hidden.bs."+this.type),this)},b.prototype.fixTitle=function(){var a=this.$element;(a.attr("title")||"string"!=typeof a.attr("data-original-title"))&&a.attr("data-original-title",a.attr("title")||"").attr("title","")},b.prototype.hasContent=function(){return this.getTitle()},b.prototype.getPosition=function(){var b=this.$element[0];return a.extend({},"function"==typeof b.getBoundingClientRect?b.getBoundingClientRect():{width:b.offsetWidth,height:b.offsetHeight},this.$element.offset())},b.prototype.getCalculatedOffset=function(a,b,c,d){return"bottom"==a?{top:b.top+b.height,left:b.left+b.width/2-c/2}:"top"==a?{top:b.top-d,left:b.left+b.width/2-c/2}:"left"==a?{top:b.top+b.height/2-d/2,left:b.left-c}:{top:b.top+b.height/2-d/2,left:b.left+b.width}},b.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},b.prototype.tip=function(){return this.$tip=this.$tip||a(this.options.template)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},b.prototype.validate=function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},b.prototype.enable=function(){this.enabled=!0},b.prototype.disable=function(){this.enabled=!1},b.prototype.toggleEnabled=function(){this.enabled=!this.enabled},b.prototype.toggle=function(b){var c=b?a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type):this;c.tip().hasClass("in")?c.leave(c):c.enter(c)},b.prototype.destroy=function(){this.hide().$element.off("."+this.type).removeData("bs."+this.type)};var c=a.fn.tooltip;a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data("bs.tooltip"),f="object"==typeof c&&c;e||d.data("bs.tooltip",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=c,this}}(window.jQuery),+function(a){"use strict";var b=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");b.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),b.prototype.constructor=b,b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content")[this.options.html?"html":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},b.prototype.hasContent=function(){return this.getTitle()||this.getContent()},b.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")},b.prototype.tip=function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip};var c=a.fn.popover;a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof c&&c;e||d.data("bs.popover",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.popover.Constructor=b,a.fn.popover.noConflict=function(){return a.fn.popover=c,this}}(window.jQuery),+function(a){"use strict";function b(c,d){var e,f=a.proxy(this.process,this);this.$element=a(c).is("body")?a(window):a(c),this.$body=a("body"),this.$scrollElement=this.$element.on("scroll.bs.scroll-spy.data-api",f),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||(e=a(c).attr("href"))&&e.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.offsets=a([]),this.targets=a([]),this.activeTarget=null,this.refresh(),this.process()}b.DEFAULTS={offset:10},b.prototype.refresh=function(){var b=this.$element[0]==window?"offset":"position";this.offsets=a([]),this.targets=a([]);var c=this;this.$body.find(this.selector).map(function(){var d=a(this),e=d.data("target")||d.attr("href"),f=/^#\w/.test(e)&&a(e);return f&&f.length&&[[f[b]().top+(!a.isWindow(c.$scrollElement.get(0))&&c.$scrollElement.scrollTop()),e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){c.offsets.push(this[0]),c.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,d=c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(b>=d)return g!=(a=f.last()[0])&&this.activate(a);for(a=e.length;a--;)g!=f[a]&&b>=e[a]&&(!e[a+1]||b<=e[a+1])&&this.activate(f[a])},b.prototype.activate=function(b){this.activeTarget=b,a(this.selector).parents(".active").removeClass("active");var c=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',d=a(c).parents("li").addClass("active");d.parent(".dropdown-menu").length&&(d=d.closest("li.dropdown").addClass("active")),d.trigger("activate")};var c=a.fn.scrollspy;a.fn.scrollspy=function(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.scrollspy.Constructor=b,a.fn.scrollspy.noConflict=function(){return a.fn.scrollspy=c,this},a(window).on("load",function(){a('[data-spy="scroll"]').each(function(){var b=a(this);b.scrollspy(b.data())})})}(window.jQuery),+function(a){"use strict";var b=function(b){this.element=a(b)};b.prototype.show=function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.attr("data-target");if(d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),!b.parent("li").hasClass("active")){var e=c.find(".active:last a")[0],f=a.Event("show.bs.tab",{relatedTarget:e});if(b.trigger(f),!f.isDefaultPrevented()){var g=a(d);this.activate(b.parent("li"),c),this.activate(g,g.parent(),function(){b.trigger({type:"shown.bs.tab",relatedTarget:e})})}}},b.prototype.activate=function(b,c,d){function e(){f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),g?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var f=c.find("> .active"),g=d&&a.support.transition&&f.hasClass("fade");g?f.one(a.support.transition.end,e).emulateTransitionEnd(150):e(),f.removeClass("in")};var c=a.fn.tab;a.fn.tab=function(c){return this.each(function(){var d=a(this),e=d.data("bs.tab");e||d.data("bs.tab",e=new b(this)),"string"==typeof c&&e[c]()})},a.fn.tab.Constructor=b,a.fn.tab.noConflict=function(){return a.fn.tab=c,this},a(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(b){b.preventDefault(),a(this).tab("show")})}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.options=a.extend({},b.DEFAULTS,d),this.$window=a(window).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(c),this.affixed=this.unpin=null,this.checkPosition()};b.RESET="affix affix-top affix-bottom",b.DEFAULTS={offset:0},b.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},b.prototype.checkPosition=function(){if(this.$element.is(":visible")){var c=a(document).height(),d=this.$window.scrollTop(),e=this.$element.offset(),f=this.options.offset,g=f.top,h=f.bottom;"object"!=typeof f&&(h=g=f),"function"==typeof g&&(g=f.top()),"function"==typeof h&&(h=f.bottom());var i=null!=this.unpin&&d+this.unpin<=e.top?!1:null!=h&&e.top+this.$element.height()>=c-h?"bottom":null!=g&&g>=d?"top":!1;this.affixed!==i&&(this.unpin&&this.$element.css("top",""),this.affixed=i,this.unpin="bottom"==i?e.top-d:null,this.$element.removeClass(b.RESET).addClass("affix"+(i?"-"+i:"")),"bottom"==i&&this.$element.offset({top:document.body.offsetHeight-h-this.$element.height()}))}};var c=a.fn.affix;a.fn.affix=function(c){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof c&&c;e||d.data("bs.affix",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.affix.Constructor=b,a.fn.affix.noConflict=function(){return a.fn.affix=c,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var b=a(this),c=b.data();c.offset=c.offset||{},c.offsetBottom&&(c.offset.bottom=c.offsetBottom),c.offsetTop&&(c.offset.top=c.offsetTop),b.affix(c)})})}(window.jQuery);
  
1/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
2//@ sourceMappingURL=jquery-1.10.2.min.map
3*/
4(function(e,t){var n,r,i=typeof t,o=e.location,a=e.document,s=a.documentElement,l=e.jQuery,u=e.$,c={},p=[],f="1.10.2",d=p.concat,h=p.push,g=p.slice,m=p.indexOf,y=c.toString,v=c.hasOwnProperty,b=f.trim,x=function(e,t){return new x.fn.init(e,t,r)},w=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=/\S+/g,C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,N=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,k=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,E=/^[\],:{}\s]*$/,S=/(?:^|:|,)(?:\s*\[)+/g,A=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,j=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,D=/^-ms-/,L=/-([\da-z])/gi,H=function(e,t){return t.toUpperCase()},q=function(e){(a.addEventListener||"load"===e.type||"complete"===a.readyState)&&(_(),x.ready())},_=function(){a.addEventListener?(a.removeEventListener("DOMContentLoaded",q,!1),e.removeEventListener("load",q,!1)):(a.detachEvent("onreadystatechange",q),e.detachEvent("onload",q))};x.fn=x.prototype={jquery:f,constructor:x,init:function(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:N.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof x?n[0]:n,x.merge(this,x.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:a,!0)),k.test(i[1])&&x.isPlainObject(n))for(i in n)x.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(o=a.getElementById(i[2]),o&&o.parentNode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context=a,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):x.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),x.makeArray(e,this))},selector:"",length:0,toArray:function(){return g.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=x.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return x.each(this,e,t)},ready:function(e){return x.ready.promise().done(e),this},slice:function(){return this.pushStack(g.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(x.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:h,sort:[].sort,splice:[].splice},x.fn.init.prototype=x.fn,x.extend=x.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},l=1,u=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},l=2),"object"==typeof s||x.isFunction(s)||(s={}),u===l&&(s=this,--l);u>l;l++)if(null!=(o=arguments[l]))for(i in o)e=s[i],r=o[i],s!==r&&(c&&r&&(x.isPlainObject(r)||(n=x.isArray(r)))?(n?(n=!1,a=e&&x.isArray(e)?e:[]):a=e&&x.isPlainObject(e)?e:{},s[i]=x.extend(c,a,r)):r!==t&&(s[i]=r));return s},x.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===x&&(e.$=u),t&&e.jQuery===x&&(e.jQuery=l),x},isReady:!1,readyWait:1,holdReady:function(e){e?x.readyWait++:x.ready(!0)},ready:function(e){if(e===!0?!--x.readyWait:!x.isReady){if(!a.body)return setTimeout(x.ready);x.isReady=!0,e!==!0&&--x.readyWait>0||(n.resolveWith(a,[x]),x.fn.trigger&&x(a).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===x.type(e)},isArray:Array.isArray||function(e){return"array"===x.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?c[y.call(e)]||"object":typeof e},isPlainObject:function(e){var n;if(!e||"object"!==x.type(e)||e.nodeType||x.isWindow(e))return!1;try{if(e.constructor&&!v.call(e,"constructor")&&!v.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(r){return!1}if(x.support.ownLast)for(n in e)return v.call(e,n);for(n in e);return n===t||v.call(e,n)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||a;var r=k.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=x.buildFragment([e],t,i),i&&x(i).remove(),x.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=x.trim(n),n&&E.test(n.replace(A,"@").replace(j,"]").replace(S,"")))?Function("return "+n)():(x.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||x.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&x.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(D,"ms-").replace(L,H)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,i=0,o=e.length,a=M(e);if(n){if(a){for(;o>i;i++)if(r=t.apply(e[i],n),r===!1)break}else for(i in e)if(r=t.apply(e[i],n),r===!1)break}else if(a){for(;o>i;i++)if(r=t.call(e[i],i,e[i]),r===!1)break}else for(i in e)if(r=t.call(e[i],i,e[i]),r===!1)break;return e},trim:b&&!b.call("\ufeff\u00a0")?function(e){return null==e?"":b.call(e)}:function(e){return null==e?"":(e+"").replace(C,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(M(Object(e))?x.merge(n,"string"==typeof e?[e]:e):h.call(n,e)),n},inArray:function(e,t,n){var r;if(t){if(m)return m.call(t,e,n);for(r=t.length,n=n?0>n?Math.max(0,r+n):n:0;r>n;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,n){var r=n.length,i=e.length,o=0;if("number"==typeof r)for(;r>o;o++)e[i++]=n[o];else while(n[o]!==t)e[i++]=n[o++];return e.length=i,e},grep:function(e,t,n){var r,i=[],o=0,a=e.length;for(n=!!n;a>o;o++)r=!!t(e[o],o),n!==r&&i.push(e[o]);return i},map:function(e,t,n){var r,i=0,o=e.length,a=M(e),s=[];if(a)for(;o>i;i++)r=t(e[i],i,n),null!=r&&(s[s.length]=r);else for(i in e)r=t(e[i],i,n),null!=r&&(s[s.length]=r);return d.apply([],s)},guid:1,proxy:function(e,n){var r,i,o;return"string"==typeof n&&(o=e[n],n=e,e=o),x.isFunction(e)?(r=g.call(arguments,2),i=function(){return e.apply(n||this,r.concat(g.call(arguments)))},i.guid=e.guid=e.guid||x.guid++,i):t},access:function(e,n,r,i,o,a,s){var l=0,u=e.length,c=null==r;if("object"===x.type(r)){o=!0;for(l in r)x.access(e,n,l,r[l],!0,a,s)}else if(i!==t&&(o=!0,x.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=function(e,t,n){return c.call(x(e),n)})),n))for(;u>l;l++)n(e[l],r,s?i:i.call(e[l],l,n(e[l],r)));return o?e:c?n.call(e):u?n(e[0],r):a},now:function(){return(new Date).getTime()},swap:function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i}}),x.ready.promise=function(t){if(!n)if(n=x.Deferred(),"complete"===a.readyState)setTimeout(x.ready);else if(a.addEventListener)a.addEventListener("DOMContentLoaded",q,!1),e.addEventListener("load",q,!1);else{a.attachEvent("onreadystatechange",q),e.attachEvent("onload",q);var r=!1;try{r=null==e.frameElement&&a.documentElement}catch(i){}r&&r.doScroll&&function o(){if(!x.isReady){try{r.doScroll("left")}catch(e){return setTimeout(o,50)}_(),x.ready()}}()}return n.promise(t)},x.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){c["[object "+t+"]"]=t.toLowerCase()});function M(e){var t=e.length,n=x.type(e);return x.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"number"==typeof t&&t>0&&t-1 in e)}r=x(a),function(e,t){var n,r,i,o,a,s,l,u,c,p,f,d,h,g,m,y,v,b="sizzle"+-new Date,w=e.document,T=0,C=0,N=st(),k=st(),E=st(),S=!1,A=function(e,t){return e===t?(S=!0,0):0},j=typeof t,D=1<<31,L={}.hasOwnProperty,H=[],q=H.pop,_=H.push,M=H.push,O=H.slice,F=H.indexOf||function(e){var t=0,n=this.length;for(;n>t;t++)if(this[t]===e)return t;return-1},B="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",P="[\\x20\\t\\r\\n\\f]",R="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",W=R.replace("w","w#"),$="\\["+P+"*("+R+")"+P+"*(?:([*^$|!~]?=)"+P+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+W+")|)|)"+P+"*\\]",I=":("+R+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+$.replace(3,8)+")*)|.*)\\)|)",z=RegExp("^"+P+"+|((?:^|[^\\\\])(?:\\\\.)*)"+P+"+$","g"),X=RegExp("^"+P+"*,"+P+"*"),U=RegExp("^"+P+"*([>+~]|"+P+")"+P+"*"),V=RegExp(P+"*[+~]"),Y=RegExp("="+P+"*([^\\]'\"]*)"+P+"*\\]","g"),J=RegExp(I),G=RegExp("^"+W+"$"),Q={ID:RegExp("^#("+R+")"),CLASS:RegExp("^\\.("+R+")"),TAG:RegExp("^("+R.replace("w","w*")+")"),ATTR:RegExp("^"+$),PSEUDO:RegExp("^"+I),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+P+"*(even|odd|(([+-]|)(\\d*)n|)"+P+"*(?:([+-]|)"+P+"*(\\d+)|))"+P+"*\\)|)","i"),bool:RegExp("^(?:"+B+")$","i"),needsContext:RegExp("^"+P+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+P+"*((?:-\\d)?\\d*)"+P+"*\\)|)(?=[^-]|$)","i")},K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,et=/^(?:input|select|textarea|button)$/i,tt=/^h\d$/i,nt=/'|\\/g,rt=RegExp("\\\\([\\da-f]{1,6}"+P+"?|("+P+")|.)","ig"),it=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(55296|r>>10,56320|1023&r)};try{M.apply(H=O.call(w.childNodes),w.childNodes),H[w.childNodes.length].nodeType}catch(ot){M={apply:H.length?function(e,t){_.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function at(e,t,n,i){var o,a,s,l,u,c,d,m,y,x;if((t?t.ownerDocument||t:w)!==f&&p(t),t=t||f,n=n||[],!e||"string"!=typeof e)return n;if(1!==(l=t.nodeType)&&9!==l)return[];if(h&&!i){if(o=Z.exec(e))if(s=o[1]){if(9===l){if(a=t.getElementById(s),!a||!a.parentNode)return n;if(a.id===s)return n.push(a),n}else if(t.ownerDocument&&(a=t.ownerDocument.getElementById(s))&&v(t,a)&&a.id===s)return n.push(a),n}else{if(o[2])return M.apply(n,t.getElementsByTagName(e)),n;if((s=o[3])&&r.getElementsByClassName&&t.getElementsByClassName)return M.apply(n,t.getElementsByClassName(s)),n}if(r.qsa&&(!g||!g.test(e))){if(m=d=b,y=t,x=9===l&&e,1===l&&"object"!==t.nodeName.toLowerCase()){c=mt(e),(d=t.getAttribute("id"))?m=d.replace(nt,"\\$&"):t.setAttribute("id",m),m="[id='"+m+"'] ",u=c.length;while(u--)c[u]=m+yt(c[u]);y=V.test(e)&&t.parentNode||t,x=c.join(",")}if(x)try{return M.apply(n,y.querySelectorAll(x)),n}catch(T){}finally{d||t.removeAttribute("id")}}}return kt(e.replace(z,"$1"),t,n,i)}function st(){var e=[];function t(n,r){return e.push(n+=" ")>o.cacheLength&&delete t[e.shift()],t[n]=r}return t}function lt(e){return e[b]=!0,e}function ut(e){var t=f.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ct(e,t){var n=e.split("|"),r=e.length;while(r--)o.attrHandle[n[r]]=t}function pt(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||D)-(~e.sourceIndex||D);if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function ft(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function dt(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function ht(e){return lt(function(t){return t=+t,lt(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}s=at.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},r=at.support={},p=at.setDocument=function(e){var n=e?e.ownerDocument||e:w,i=n.defaultView;return n!==f&&9===n.nodeType&&n.documentElement?(f=n,d=n.documentElement,h=!s(n),i&&i.attachEvent&&i!==i.top&&i.attachEvent("onbeforeunload",function(){p()}),r.attributes=ut(function(e){return e.className="i",!e.getAttribute("className")}),r.getElementsByTagName=ut(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),r.getElementsByClassName=ut(function(e){return e.innerHTML="<div class='a'></div><div class='a i'></div>",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),r.getById=ut(function(e){return d.appendChild(e).id=b,!n.getElementsByName||!n.getElementsByName(b).length}),r.getById?(o.find.ID=function(e,t){if(typeof t.getElementById!==j&&h){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){return e.getAttribute("id")===t}}):(delete o.find.ID,o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){var n=typeof e.getAttributeNode!==j&&e.getAttributeNode("id");return n&&n.value===t}}),o.find.TAG=r.getElementsByTagName?function(e,n){return typeof n.getElementsByTagName!==j?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},o.find.CLASS=r.getElementsByClassName&&function(e,n){return typeof n.getElementsByClassName!==j&&h?n.getElementsByClassName(e):t},m=[],g=[],(r.qsa=K.test(n.querySelectorAll))&&(ut(function(e){e.innerHTML="<select><option selected=''></option></select>",e.querySelectorAll("[selected]").length||g.push("\\["+P+"*(?:value|"+B+")"),e.querySelectorAll(":checked").length||g.push(":checked")}),ut(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t",""),e.querySelectorAll("[t^='']").length&&g.push("[*^$]="+P+"*(?:''|\"\")"),e.querySelectorAll(":enabled").length||g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(r.matchesSelector=K.test(y=d.webkitMatchesSelector||d.mozMatchesSelector||d.oMatchesSelector||d.msMatchesSelector))&&ut(function(e){r.disconnectedMatch=y.call(e,"div"),y.call(e,"[s!='']:x"),m.push("!=",I)}),g=g.length&&RegExp(g.join("|")),m=m.length&&RegExp(m.join("|")),v=K.test(d.contains)||d.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},A=d.compareDocumentPosition?function(e,t){if(e===t)return S=!0,0;var i=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t);return i?1&i||!r.sortDetached&&t.compareDocumentPosition(e)===i?e===n||v(w,e)?-1:t===n||v(w,t)?1:c?F.call(c,e)-F.call(c,t):0:4&i?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,o=e.parentNode,a=t.parentNode,s=[e],l=[t];if(e===t)return S=!0,0;if(!o||!a)return e===n?-1:t===n?1:o?-1:a?1:c?F.call(c,e)-F.call(c,t):0;if(o===a)return pt(e,t);r=e;while(r=r.parentNode)s.unshift(r);r=t;while(r=r.parentNode)l.unshift(r);while(s[i]===l[i])i++;return i?pt(s[i],l[i]):s[i]===w?-1:l[i]===w?1:0},n):f},at.matches=function(e,t){return at(e,null,null,t)},at.matchesSelector=function(e,t){if((e.ownerDocument||e)!==f&&p(e),t=t.replace(Y,"='$1']"),!(!r.matchesSelector||!h||m&&m.test(t)||g&&g.test(t)))try{var n=y.call(e,t);if(n||r.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(i){}return at(t,f,null,[e]).length>0},at.contains=function(e,t){return(e.ownerDocument||e)!==f&&p(e),v(e,t)},at.attr=function(e,n){(e.ownerDocument||e)!==f&&p(e);var i=o.attrHandle[n.toLowerCase()],a=i&&L.call(o.attrHandle,n.toLowerCase())?i(e,n,!h):t;return a===t?r.attributes||!h?e.getAttribute(n):(a=e.getAttributeNode(n))&&a.specified?a.value:null:a},at.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},at.uniqueSort=function(e){var t,n=[],i=0,o=0;if(S=!r.detectDuplicates,c=!r.sortStable&&e.slice(0),e.sort(A),S){while(t=e[o++])t===e[o]&&(i=n.push(o));while(i--)e.splice(n[i],1)}return e},a=at.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=a(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=a(t);return n},o=at.selectors={cacheLength:50,createPseudo:lt,match:Q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(rt,it),e[3]=(e[4]||e[5]||"").replace(rt,it),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||at.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&at.error(e[0]),e},PSEUDO:function(e){var n,r=!e[5]&&e[2];return Q.CHILD.test(e[0])?null:(e[3]&&e[4]!==t?e[2]=e[4]:r&&J.test(r)&&(n=mt(r,!0))&&(n=r.indexOf(")",r.length-n)-r.length)&&(e[0]=e[0].slice(0,n),e[2]=r.slice(0,n)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(rt,it).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=N[e+" "];return t||(t=RegExp("(^|"+P+")"+e+"("+P+"|$)"))&&N(e,function(e){return t.test("string"==typeof e.className&&e.className||typeof e.getAttribute!==j&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=at.attr(r,e);return null==i?"!="===t:t?(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i+" ").indexOf(n)>-1:"|="===t?i===n||i.slice(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var u,c,p,f,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!l&&!s;if(m){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){c=m[b]||(m[b]={}),u=c[e]||[],d=u[0]===T&&u[1],f=u[0]===T&&u[2],p=d&&m.childNodes[d];while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if(1===p.nodeType&&++f&&p===t){c[e]=[T,d,f];break}}else if(v&&(u=(t[b]||(t[b]={}))[e])&&u[0]===T)f=u[1];else while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if((s?p.nodeName.toLowerCase()===y:1===p.nodeType)&&++f&&(v&&((p[b]||(p[b]={}))[e]=[T,f]),p===t))break;return f-=i,f===r||0===f%r&&f/r>=0}}},PSEUDO:function(e,t){var n,r=o.pseudos[e]||o.setFilters[e.toLowerCase()]||at.error("unsupported pseudo: "+e);return r[b]?r(t):r.length>1?(n=[e,e,"",t],o.setFilters.hasOwnProperty(e.toLowerCase())?lt(function(e,n){var i,o=r(e,t),a=o.length;while(a--)i=F.call(e,o[a]),e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:lt(function(e){var t=[],n=[],r=l(e.replace(z,"$1"));return r[b]?lt(function(e,t,n,i){var o,a=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:lt(function(e){return function(t){return at(e,t).length>0}}),contains:lt(function(e){return function(t){return(t.textContent||t.innerText||a(t)).indexOf(e)>-1}}),lang:lt(function(e){return G.test(e||"")||at.error("unsupported lang: "+e),e=e.replace(rt,it).toLowerCase(),function(t){var n;do if(n=h?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===d},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)return!1;return!0},parent:function(e){return!o.pseudos.empty(e)},header:function(e){return tt.test(e.nodeName)},input:function(e){return et.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type)},first:ht(function(){return[0]}),last:ht(function(e,t){return[t-1]}),eq:ht(function(e,t,n){return[0>n?n+t:n]}),even:ht(function(e,t){var n=0;for(;t>n;n+=2)e.push(n);return e}),odd:ht(function(e,t){var n=1;for(;t>n;n+=2)e.push(n);return e}),lt:ht(function(e,t,n){var r=0>n?n+t:n;for(;--r>=0;)e.push(r);return e}),gt:ht(function(e,t,n){var r=0>n?n+t:n;for(;t>++r;)e.push(r);return e})}},o.pseudos.nth=o.pseudos.eq;for(n in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})o.pseudos[n]=ft(n);for(n in{submit:!0,reset:!0})o.pseudos[n]=dt(n);function gt(){}gt.prototype=o.filters=o.pseudos,o.setFilters=new gt;function mt(e,t){var n,r,i,a,s,l,u,c=k[e+" "];if(c)return t?0:c.slice(0);s=e,l=[],u=o.preFilter;while(s){(!n||(r=X.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),l.push(i=[])),n=!1,(r=U.exec(s))&&(n=r.shift(),i.push({value:n,type:r[0].replace(z," ")}),s=s.slice(n.length));for(a in o.filter)!(r=Q[a].exec(s))||u[a]&&!(r=u[a](r))||(n=r.shift(),i.push({value:n,type:a,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?at.error(e):k(e,l).slice(0)}function yt(e){var t=0,n=e.length,r="";for(;n>t;t++)r+=e[t].value;return r}function vt(e,t,n){var r=t.dir,o=n&&"parentNode"===r,a=C++;return t.first?function(t,n,i){while(t=t[r])if(1===t.nodeType||o)return e(t,n,i)}:function(t,n,s){var l,u,c,p=T+" "+a;if(s){while(t=t[r])if((1===t.nodeType||o)&&e(t,n,s))return!0}else while(t=t[r])if(1===t.nodeType||o)if(c=t[b]||(t[b]={}),(u=c[r])&&u[0]===p){if((l=u[1])===!0||l===i)return l===!0}else if(u=c[r]=[p],u[1]=e(t,n,s)||i,u[1]===!0)return!0}}function bt(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xt(e,t,n,r,i){var o,a=[],s=0,l=e.length,u=null!=t;for(;l>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),u&&t.push(s));return a}function wt(e,t,n,r,i,o){return r&&!r[b]&&(r=wt(r)),i&&!i[b]&&(i=wt(i,o)),lt(function(o,a,s,l){var u,c,p,f=[],d=[],h=a.length,g=o||Nt(t||"*",s.nodeType?[s]:s,[]),m=!e||!o&&t?g:xt(g,f,e,s,l),y=n?i||(o?e:h||r)?[]:a:m;if(n&&n(m,y,s,l),r){u=xt(y,d),r(u,[],s,l),c=u.length;while(c--)(p=u[c])&&(y[d[c]]=!(m[d[c]]=p))}if(o){if(i||e){if(i){u=[],c=y.length;while(c--)(p=y[c])&&u.push(m[c]=p);i(null,y=[],u,l)}c=y.length;while(c--)(p=y[c])&&(u=i?F.call(o,p):f[c])>-1&&(o[u]=!(a[u]=p))}}else y=xt(y===a?y.splice(h,y.length):y),i?i(null,a,y,l):M.apply(a,y)})}function Tt(e){var t,n,r,i=e.length,a=o.relative[e[0].type],s=a||o.relative[" "],l=a?1:0,c=vt(function(e){return e===t},s,!0),p=vt(function(e){return F.call(t,e)>-1},s,!0),f=[function(e,n,r){return!a&&(r||n!==u)||((t=n).nodeType?c(e,n,r):p(e,n,r))}];for(;i>l;l++)if(n=o.relative[e[l].type])f=[vt(bt(f),n)];else{if(n=o.filter[e[l].type].apply(null,e[l].matches),n[b]){for(r=++l;i>r;r++)if(o.relative[e[r].type])break;return wt(l>1&&bt(f),l>1&&yt(e.slice(0,l-1).concat({value:" "===e[l-2].type?"*":""})).replace(z,"$1"),n,r>l&&Tt(e.slice(l,r)),i>r&&Tt(e=e.slice(r)),i>r&&yt(e))}f.push(n)}return bt(f)}function Ct(e,t){var n=0,r=t.length>0,a=e.length>0,s=function(s,l,c,p,d){var h,g,m,y=[],v=0,b="0",x=s&&[],w=null!=d,C=u,N=s||a&&o.find.TAG("*",d&&l.parentNode||l),k=T+=null==C?1:Math.random()||.1;for(w&&(u=l!==f&&l,i=n);null!=(h=N[b]);b++){if(a&&h){g=0;while(m=e[g++])if(m(h,l,c)){p.push(h);break}w&&(T=k,i=++n)}r&&((h=!m&&h)&&v--,s&&x.push(h))}if(v+=b,r&&b!==v){g=0;while(m=t[g++])m(x,y,l,c);if(s){if(v>0)while(b--)x[b]||y[b]||(y[b]=q.call(p));y=xt(y)}M.apply(p,y),w&&!s&&y.length>0&&v+t.length>1&&at.uniqueSort(p)}return w&&(T=k,u=C),x};return r?lt(s):s}l=at.compile=function(e,t){var n,r=[],i=[],o=E[e+" "];if(!o){t||(t=mt(e)),n=t.length;while(n--)o=Tt(t[n]),o[b]?r.push(o):i.push(o);o=E(e,Ct(i,r))}return o};function Nt(e,t,n){var r=0,i=t.length;for(;i>r;r++)at(e,t[r],n);return n}function kt(e,t,n,i){var a,s,u,c,p,f=mt(e);if(!i&&1===f.length){if(s=f[0]=f[0].slice(0),s.length>2&&"ID"===(u=s[0]).type&&r.getById&&9===t.nodeType&&h&&o.relative[s[1].type]){if(t=(o.find.ID(u.matches[0].replace(rt,it),t)||[])[0],!t)return n;e=e.slice(s.shift().value.length)}a=Q.needsContext.test(e)?0:s.length;while(a--){if(u=s[a],o.relative[c=u.type])break;if((p=o.find[c])&&(i=p(u.matches[0].replace(rt,it),V.test(s[0].type)&&t.parentNode||t))){if(s.splice(a,1),e=i.length&&yt(s),!e)return M.apply(n,i),n;break}}}return l(e,f)(i,t,!h,n,V.test(e)),n}r.sortStable=b.split("").sort(A).join("")===b,r.detectDuplicates=S,p(),r.sortDetached=ut(function(e){return 1&e.compareDocumentPosition(f.createElement("div"))}),ut(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||ct("type|href|height|width",function(e,n,r){return r?t:e.getAttribute(n,"type"===n.toLowerCase()?1:2)}),r.attributes&&ut(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||ct("value",function(e,n,r){return r||"input"!==e.nodeName.toLowerCase()?t:e.defaultValue}),ut(function(e){return null==e.getAttribute("disabled")})||ct(B,function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&i.specified?i.value:e[n]===!0?n.toLowerCase():null}),x.find=at,x.expr=at.selectors,x.expr[":"]=x.expr.pseudos,x.unique=at.uniqueSort,x.text=at.getText,x.isXMLDoc=at.isXML,x.contains=at.contains}(e);var O={};function F(e){var t=O[e]={};return x.each(e.match(T)||[],function(e,n){t[n]=!0}),t}x.Callbacks=function(e){e="string"==typeof e?O[e]||F(e):x.extend({},e);var n,r,i,o,a,s,l=[],u=!e.once&&[],c=function(t){for(r=e.memory&&t,i=!0,a=s||0,s=0,o=l.length,n=!0;l&&o>a;a++)if(l[a].apply(t[0],t[1])===!1&&e.stopOnFalse){r=!1;break}n=!1,l&&(u?u.length&&c(u.shift()):r?l=[]:p.disable())},p={add:function(){if(l){var t=l.length;(function i(t){x.each(t,function(t,n){var r=x.type(n);"function"===r?e.unique&&p.has(n)||l.push(n):n&&n.length&&"string"!==r&&i(n)})})(arguments),n?o=l.length:r&&(s=t,c(r))}return this},remove:function(){return l&&x.each(arguments,function(e,t){var r;while((r=x.inArray(t,l,r))>-1)l.splice(r,1),n&&(o>=r&&o--,a>=r&&a--)}),this},has:function(e){return e?x.inArray(e,l)>-1:!(!l||!l.length)},empty:function(){return l=[],o=0,this},disable:function(){return l=u=r=t,this},disabled:function(){return!l},lock:function(){return u=t,r||p.disable(),this},locked:function(){return!u},fireWith:function(e,t){return!l||i&&!u||(t=t||[],t=[e,t.slice?t.slice():t],n?u.push(t):c(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},x.extend({Deferred:function(e){var t=[["resolve","done",x.Callbacks("once memory"),"resolved"],["reject","fail",x.Callbacks("once memory"),"rejected"],["notify","progress",x.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return x.Deferred(function(n){x.each(t,function(t,o){var a=o[0],s=x.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&x.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"With"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?x.extend(e,r):r}},i={};return r.pipe=r.then,x.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=g.call(arguments),r=n.length,i=1!==r||e&&x.isFunction(e.promise)?r:0,o=1===i?e:x.Deferred(),a=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?g.call(arguments):r,n===s?o.notifyWith(t,n):--i||o.resolveWith(t,n)}},s,l,u;if(r>1)for(s=Array(r),l=Array(r),u=Array(r);r>t;t++)n[t]&&x.isFunction(n[t].promise)?n[t].promise().done(a(t,u,n)).fail(o.reject).progress(a(t,l,s)):--i;return i||o.resolveWith(u,n),o.promise()}}),x.support=function(t){var n,r,o,s,l,u,c,p,f,d=a.createElement("div");if(d.setAttribute("className","t"),d.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",n=d.getElementsByTagName("*")||[],r=d.getElementsByTagName("a")[0],!r||!r.style||!n.length)return t;s=a.createElement("select"),u=s.appendChild(a.createElement("option")),o=d.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t.getSetAttribute="t"!==d.className,t.leadingWhitespace=3===d.firstChild.nodeType,t.tbody=!d.getElementsByTagName("tbody").length,t.htmlSerialize=!!d.getElementsByTagName("link").length,t.style=/top/.test(r.getAttribute("style")),t.hrefNormalized="/a"===r.getAttribute("href"),t.opacity=/^0.5/.test(r.style.opacity),t.cssFloat=!!r.style.cssFloat,t.checkOn=!!o.value,t.optSelected=u.selected,t.enctype=!!a.createElement("form").enctype,t.html5Clone="<:nav></:nav>"!==a.createElement("nav").cloneNode(!0).outerHTML,t.inlineBlockNeedsLayout=!1,t.shrinkWrapBlocks=!1,t.pixelPosition=!1,t.deleteExpando=!0,t.noCloneEvent=!0,t.reliableMarginRight=!0,t.boxSizingReliable=!0,o.checked=!0,t.noCloneChecked=o.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!u.disabled;try{delete d.test}catch(h){t.deleteExpando=!1}o=a.createElement("input"),o.setAttribute("value",""),t.input=""===o.getAttribute("value"),o.value="t",o.setAttribute("type","radio"),t.radioValue="t"===o.value,o.setAttribute("checked","t"),o.setAttribute("name","t"),l=a.createDocumentFragment(),l.appendChild(o),t.appendChecked=o.checked,t.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,d.attachEvent&&(d.attachEvent("onclick",function(){t.noCloneEvent=!1}),d.cloneNode(!0).click());for(f in{submit:!0,change:!0,focusin:!0})d.setAttribute(c="on"+f,"t"),t[f+"Bubbles"]=c in e||d.attributes[c].expando===!1;d.style.backgroundClip="content-box",d.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===d.style.backgroundClip;for(f in x(t))break;return t.ownLast="0"!==f,x(function(){var n,r,o,s="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",l=a.getElementsByTagName("body")[0];l&&(n=a.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",l.appendChild(n).appendChild(d),d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",o=d.getElementsByTagName("td"),o[0].style.cssText="padding:0;margin:0;border:0;display:none",p=0===o[0].offsetHeight,o[0].style.display="",o[1].style.display="none",t.reliableHiddenOffsets=p&&0===o[0].offsetHeight,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",x.swap(l,null!=l.style.zoom?{zoom:1}:{},function(){t.boxSizing=4===d.offsetWidth}),e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(d,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(d,null)||{width:"4px"}).width,r=d.appendChild(a.createElement("div")),r.style.cssText=d.style.cssText=s,r.style.marginRight=r.style.width="0",d.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),typeof d.style.zoom!==i&&(d.innerHTML="",d.style.cssText=s+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=3===d.offsetWidth,d.style.display="block",d.innerHTML="<div></div>",d.firstChild.style.width="5px",t.shrinkWrapBlocks=3!==d.offsetWidth,t.inlineBlockNeedsLayout&&(l.style.zoom=1)),l.removeChild(n),n=d=o=r=null)}),n=s=l=u=r=o=null,t
5}({});var B=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;function R(e,n,r,i){if(x.acceptData(e)){var o,a,s=x.expando,l=e.nodeType,u=l?x.cache:e,c=l?e[s]:e[s]&&s;if(c&&u[c]&&(i||u[c].data)||r!==t||"string"!=typeof n)return c||(c=l?e[s]=p.pop()||x.guid++:s),u[c]||(u[c]=l?{}:{toJSON:x.noop}),("object"==typeof n||"function"==typeof n)&&(i?u[c]=x.extend(u[c],n):u[c].data=x.extend(u[c].data,n)),a=u[c],i||(a.data||(a.data={}),a=a.data),r!==t&&(a[x.camelCase(n)]=r),"string"==typeof n?(o=a[n],null==o&&(o=a[x.camelCase(n)])):o=a,o}}function W(e,t,n){if(x.acceptData(e)){var r,i,o=e.nodeType,a=o?x.cache:e,s=o?e[x.expando]:x.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){x.isArray(t)?t=t.concat(x.map(t,x.camelCase)):t in r?t=[t]:(t=x.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;while(i--)delete r[t[i]];if(n?!I(r):!x.isEmptyObject(r))return}(n||(delete a[s].data,I(a[s])))&&(o?x.cleanData([e],!0):x.support.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}x.extend({cache:{},noData:{applet:!0,embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?x.cache[e[x.expando]]:e[x.expando],!!e&&!I(e)},data:function(e,t,n){return R(e,t,n)},removeData:function(e,t){return W(e,t)},_data:function(e,t,n){return R(e,t,n,!0)},_removeData:function(e,t){return W(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&x.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),x.fn.extend({data:function(e,n){var r,i,o=null,a=0,s=this[0];if(e===t){if(this.length&&(o=x.data(s),1===s.nodeType&&!x._data(s,"parsedAttrs"))){for(r=s.attributes;r.length>a;a++)i=r[a].name,0===i.indexOf("data-")&&(i=x.camelCase(i.slice(5)),$(s,i,o[i]));x._data(s,"parsedAttrs",!0)}return o}return"object"==typeof e?this.each(function(){x.data(this,e)}):arguments.length>1?this.each(function(){x.data(this,e,n)}):s?$(s,e,x.data(s,e)):null},removeData:function(e){return this.each(function(){x.removeData(this,e)})}});function $(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(P,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:B.test(r)?x.parseJSON(r):r}catch(o){}x.data(e,n,r)}else r=t}return r}function I(e){var t;for(t in e)if(("data"!==t||!x.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}x.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=x._data(e,n),r&&(!i||x.isArray(r)?i=x._data(e,n,x.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,i=n.shift(),o=x._queueHooks(e,t),a=function(){x.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return x._data(e,n)||x._data(e,n,{empty:x.Callbacks("once memory").add(function(){x._removeData(e,t+"queue"),x._removeData(e,n)})})}}),x.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?x.queue(this[0],e):n===t?this:this.each(function(){var t=x.queue(this,e,n);x._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&x.dequeue(this,e)})},dequeue:function(e){return this.each(function(){x.dequeue(this,e)})},delay:function(e,t){return e=x.fx?x.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=x.Deferred(),a=this,s=this.length,l=function(){--i||o.resolveWith(a,[a])};"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=x._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),o.promise(n)}});var z,X,U=/[\t\r\n\f]/g,V=/\r/g,Y=/^(?:input|select|textarea|button|object)$/i,J=/^(?:a|area)$/i,G=/^(?:checked|selected)$/i,Q=x.support.getSetAttribute,K=x.support.input;x.fn.extend({attr:function(e,t){return x.access(this,x.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){x.removeAttr(this,e)})},prop:function(e,t){return x.access(this,x.prop,e,t,arguments.length>1)},removeProp:function(e){return e=x.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,l="string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):" ")){o=0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=x.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,l=0===arguments.length||"string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):"")){o=0;while(i=t[o++])while(r.indexOf(" "+i+" ")>=0)r=r.replace(" "+i+" "," ");n.className=e?x.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):x.isFunction(e)?this.each(function(n){x(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n){var t,r=0,o=x(this),a=e.match(T)||[];while(t=a[r++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else(n===i||"boolean"===n)&&(this.className&&x._data(this,"__className__",this.className),this.className=this.className||e===!1?"":x._data(this,"__className__")||"")})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(U," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)return i=x.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(o=i?e.call(this,n,x(this).val()):e,null==o?o="":"number"==typeof o?o+="":x.isArray(o)&&(o=x.map(o,function(e){return null==e?"":e+""})),r=x.valHooks[this.type]||x.valHooks[this.nodeName.toLowerCase()],r&&"set"in r&&r.set(this,o,"value")!==t||(this.value=o))});if(o)return r=x.valHooks[o.type]||x.valHooks[o.nodeName.toLowerCase()],r&&"get"in r&&(n=r.get(o,"value"))!==t?n:(n=o.value,"string"==typeof n?n.replace(V,""):null==n?"":n)}}}),x.extend({valHooks:{option:{get:function(e){var t=x.find.attr(e,"value");return null!=t?t:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,a=o?null:[],s=o?i+1:r.length,l=0>i?s:o?i:0;for(;s>l;l++)if(n=r[l],!(!n.selected&&l!==i||(x.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&x.nodeName(n.parentNode,"optgroup"))){if(t=x(n).val(),o)return t;a.push(t)}return a},set:function(e,t){var n,r,i=e.options,o=x.makeArray(t),a=i.length;while(a--)r=i[a],(r.selected=x.inArray(x(r).val(),o)>=0)&&(n=!0);return n||(e.selectedIndex=-1),o}}},attr:function(e,n,r){var o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return typeof e.getAttribute===i?x.prop(e,n,r):(1===s&&x.isXMLDoc(e)||(n=n.toLowerCase(),o=x.attrHooks[n]||(x.expr.match.bool.test(n)?X:z)),r===t?o&&"get"in o&&null!==(a=o.get(e,n))?a:(a=x.find.attr(e,n),null==a?t:a):null!==r?o&&"set"in o&&(a=o.set(e,r,n))!==t?a:(e.setAttribute(n,r+""),r):(x.removeAttr(e,n),t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(T);if(o&&1===e.nodeType)while(n=o[i++])r=x.propFix[n]||n,x.expr.match.bool.test(n)?K&&Q||!G.test(n)?e[r]=!1:e[x.camelCase("default-"+n)]=e[r]=!1:x.attr(e,n,""),e.removeAttribute(Q?n:r)},attrHooks:{type:{set:function(e,t){if(!x.support.radioValue&&"radio"===t&&x.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{"for":"htmlFor","class":"className"},prop:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!x.isXMLDoc(e),a&&(n=x.propFix[n]||n,o=x.propHooks[n]),r!==t?o&&"set"in o&&(i=o.set(e,r,n))!==t?i:e[n]=r:o&&"get"in o&&null!==(i=o.get(e,n))?i:e[n]},propHooks:{tabIndex:{get:function(e){var t=x.find.attr(e,"tabindex");return t?parseInt(t,10):Y.test(e.nodeName)||J.test(e.nodeName)&&e.href?0:-1}}}}),X={set:function(e,t,n){return t===!1?x.removeAttr(e,n):K&&Q||!G.test(n)?e.setAttribute(!Q&&x.propFix[n]||n,n):e[x.camelCase("default-"+n)]=e[n]=!0,n}},x.each(x.expr.match.bool.source.match(/\w+/g),function(e,n){var r=x.expr.attrHandle[n]||x.find.attr;x.expr.attrHandle[n]=K&&Q||!G.test(n)?function(e,n,i){var o=x.expr.attrHandle[n],a=i?t:(x.expr.attrHandle[n]=t)!=r(e,n,i)?n.toLowerCase():null;return x.expr.attrHandle[n]=o,a}:function(e,n,r){return r?t:e[x.camelCase("default-"+n)]?n.toLowerCase():null}}),K&&Q||(x.attrHooks.value={set:function(e,n,r){return x.nodeName(e,"input")?(e.defaultValue=n,t):z&&z.set(e,n,r)}}),Q||(z={set:function(e,n,r){var i=e.getAttributeNode(r);return i||e.setAttributeNode(i=e.ownerDocument.createAttribute(r)),i.value=n+="","value"===r||n===e.getAttribute(r)?n:t}},x.expr.attrHandle.id=x.expr.attrHandle.name=x.expr.attrHandle.coords=function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&""!==i.value?i.value:null},x.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n);return r&&r.specified?r.value:t},set:z.set},x.attrHooks.contenteditable={set:function(e,t,n){z.set(e,""===t?!1:t,n)}},x.each(["width","height"],function(e,n){x.attrHooks[n]={set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}}})),x.support.hrefNormalized||x.each(["href","src"],function(e,t){x.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}}),x.support.style||(x.attrHooks.style={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style.cssText=t+""}}),x.support.optSelected||(x.propHooks.selected={get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}}),x.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){x.propFix[this.toLowerCase()]=this}),x.support.enctype||(x.propFix.enctype="encoding"),x.each(["radio","checkbox"],function(){x.valHooks[this]={set:function(e,n){return x.isArray(n)?e.checked=x.inArray(x(e).val(),n)>=0:t}},x.support.checkOn||(x.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Z=/^(?:input|select|textarea)$/i,et=/^key/,tt=/^(?:mouse|contextmenu)|click/,nt=/^(?:focusinfocus|focusoutblur)$/,rt=/^([^.]*)(?:\.(.+)|)$/;function it(){return!0}function ot(){return!1}function at(){try{return a.activeElement}catch(e){}}x.event={global:{},add:function(e,n,r,o,a){var s,l,u,c,p,f,d,h,g,m,y,v=x._data(e);if(v){r.handler&&(c=r,r=c.handler,a=c.selector),r.guid||(r.guid=x.guid++),(l=v.events)||(l=v.events={}),(f=v.handle)||(f=v.handle=function(e){return typeof x===i||e&&x.event.triggered===e.type?t:x.event.dispatch.apply(f.elem,arguments)},f.elem=e),n=(n||"").match(T)||[""],u=n.length;while(u--)s=rt.exec(n[u])||[],g=y=s[1],m=(s[2]||"").split(".").sort(),g&&(p=x.event.special[g]||{},g=(a?p.delegateType:p.bindType)||g,p=x.event.special[g]||{},d=x.extend({type:g,origType:y,data:o,handler:r,guid:r.guid,selector:a,needsContext:a&&x.expr.match.needsContext.test(a),namespace:m.join(".")},c),(h=l[g])||(h=l[g]=[],h.delegateCount=0,p.setup&&p.setup.call(e,o,m,f)!==!1||(e.addEventListener?e.addEventListener(g,f,!1):e.attachEvent&&e.attachEvent("on"+g,f))),p.add&&(p.add.call(e,d),d.handler.guid||(d.handler.guid=r.guid)),a?h.splice(h.delegateCount++,0,d):h.push(d),x.event.global[g]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,l,u,c,p,f,d,h,g,m=x.hasData(e)&&x._data(e);if(m&&(c=m.events)){t=(t||"").match(T)||[""],u=t.length;while(u--)if(s=rt.exec(t[u])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){p=x.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,f=c[d]||[],s=s[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),l=o=f.length;while(o--)a=f[o],!i&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(f.splice(o,1),a.selector&&f.delegateCount--,p.remove&&p.remove.call(e,a));l&&!f.length&&(p.teardown&&p.teardown.call(e,h,m.handle)!==!1||x.removeEvent(e,d,m.handle),delete c[d])}else for(d in c)x.event.remove(e,d+t[u],n,r,!0);x.isEmptyObject(c)&&(delete m.handle,x._removeData(e,"events"))}},trigger:function(n,r,i,o){var s,l,u,c,p,f,d,h=[i||a],g=v.call(n,"type")?n.type:n,m=v.call(n,"namespace")?n.namespace.split("."):[];if(u=f=i=i||a,3!==i.nodeType&&8!==i.nodeType&&!nt.test(g+x.event.triggered)&&(g.indexOf(".")>=0&&(m=g.split("."),g=m.shift(),m.sort()),l=0>g.indexOf(":")&&"on"+g,n=n[x.expando]?n:new x.Event(g,"object"==typeof n&&n),n.isTrigger=o?2:3,n.namespace=m.join("."),n.namespace_re=n.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=t,n.target||(n.target=i),r=null==r?[n]:x.makeArray(r,[n]),p=x.event.special[g]||{},o||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!o&&!p.noBubble&&!x.isWindow(i)){for(c=p.delegateType||g,nt.test(c+g)||(u=u.parentNode);u;u=u.parentNode)h.push(u),f=u;f===(i.ownerDocument||a)&&h.push(f.defaultView||f.parentWindow||e)}d=0;while((u=h[d++])&&!n.isPropagationStopped())n.type=d>1?c:p.bindType||g,s=(x._data(u,"events")||{})[n.type]&&x._data(u,"handle"),s&&s.apply(u,r),s=l&&u[l],s&&x.acceptData(u)&&s.apply&&s.apply(u,r)===!1&&n.preventDefault();if(n.type=g,!o&&!n.isDefaultPrevented()&&(!p._default||p._default.apply(h.pop(),r)===!1)&&x.acceptData(i)&&l&&i[g]&&!x.isWindow(i)){f=i[l],f&&(i[l]=null),x.event.triggered=g;try{i[g]()}catch(y){}x.event.triggered=t,f&&(i[l]=f)}return n.result}},dispatch:function(e){e=x.event.fix(e);var n,r,i,o,a,s=[],l=g.call(arguments),u=(x._data(this,"events")||{})[e.type]||[],c=x.event.special[e.type]||{};if(l[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){s=x.event.handlers.call(this,e,u),n=0;while((o=s[n++])&&!e.isPropagationStopped()){e.currentTarget=o.elem,a=0;while((i=o.handlers[a++])&&!e.isImmediatePropagationStopped())(!e.namespace_re||e.namespace_re.test(i.namespace))&&(e.handleObj=i,e.data=i.data,r=((x.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,l),r!==t&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,o,a,s=[],l=n.delegateCount,u=e.target;if(l&&u.nodeType&&(!e.button||"click"!==e.type))for(;u!=this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(o=[],a=0;l>a;a++)i=n[a],r=i.selector+" ",o[r]===t&&(o[r]=i.needsContext?x(r,this).index(u)>=0:x.find(r,this,null,[u]).length),o[r]&&o.push(i);o.length&&s.push({elem:u,handlers:o})}return n.length>l&&s.push({elem:this,handlers:n.slice(l)}),s},fix:function(e){if(e[x.expando])return e;var t,n,r,i=e.type,o=e,s=this.fixHooks[i];s||(this.fixHooks[i]=s=tt.test(i)?this.mouseHooks:et.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,e=new x.Event(o),t=r.length;while(t--)n=r[t],e[n]=o[n];return e.target||(e.target=o.srcElement||a),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,s.filter?s.filter(e,o):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,o,s=n.button,l=n.fromElement;return null==e.pageX&&null!=n.clientX&&(i=e.target.ownerDocument||a,o=i.documentElement,r=i.body,e.pageX=n.clientX+(o&&o.scrollLeft||r&&r.scrollLeft||0)-(o&&o.clientLeft||r&&r.clientLeft||0),e.pageY=n.clientY+(o&&o.scrollTop||r&&r.scrollTop||0)-(o&&o.clientTop||r&&r.clientTop||0)),!e.relatedTarget&&l&&(e.relatedTarget=l===e.target?n.toElement:l),e.which||s===t||(e.which=1&s?1:2&s?3:4&s?2:0),e}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==at()&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){return this===at()&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},click:{trigger:function(){return x.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):t},_default:function(e){return x.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=x.extend(new x.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?x.event.trigger(i,null,t):x.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},x.removeEvent=a.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)}:function(e,t,n){var r="on"+t;e.detachEvent&&(typeof e[r]===i&&(e[r]=null),e.detachEvent(r,n))},x.Event=function(e,n){return this instanceof x.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.getPreventDefault()?it:ot):this.type=e,n&&x.extend(this,n),this.timeStamp=e&&e.timeStamp||x.now(),this[x.expando]=!0,t):new x.Event(e,n)},x.Event.prototype={isDefaultPrevented:ot,isPropagationStopped:ot,isImmediatePropagationStopped:ot,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=it,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=it,e&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=it,this.stopPropagation()}},x.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){x.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return(!i||i!==r&&!x.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),x.support.submitBubbles||(x.event.special.submit={setup:function(){return x.nodeName(this,"form")?!1:(x.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=x.nodeName(n,"input")||x.nodeName(n,"button")?n.form:t;r&&!x._data(r,"submitBubbles")&&(x.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),x._data(r,"submitBubbles",!0))}),t)},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&x.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return x.nodeName(this,"form")?!1:(x.event.remove(this,"._submit"),t)}}),x.support.changeBubbles||(x.event.special.change={setup:function(){return Z.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(x.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),x.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),x.event.simulate("change",this,e,!0)})),!1):(x.event.add(this,"beforeactivate._change",function(e){var t=e.target;Z.test(t.nodeName)&&!x._data(t,"changeBubbles")&&(x.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||x.event.simulate("change",this.parentNode,e,!0)}),x._data(t,"changeBubbles",!0))}),t)},handle:function(e){var n=e.target;return this!==n||e.isSimulated||e.isTrigger||"radio"!==n.type&&"checkbox"!==n.type?e.handleObj.handler.apply(this,arguments):t},teardown:function(){return x.event.remove(this,"._change"),!Z.test(this.nodeName)}}),x.support.focusinBubbles||x.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){x.event.simulate(t,e.target,x.event.fix(e),!0)};x.event.special[t]={setup:function(){0===n++&&a.addEventListener(e,r,!0)},teardown:function(){0===--n&&a.removeEventListener(e,r,!0)}}}),x.fn.extend({on:function(e,n,r,i,o){var a,s;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(a in e)this.on(a,n,r,e[a],o);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=ot;else if(!i)return this;return 1===o&&(s=i,i=function(e){return x().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=x.guid++)),this.each(function(){x.event.add(this,e,i,r,n)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,o;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,x(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(o in e)this.off(o,n,e[o]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=ot),this.each(function(){x.event.remove(this,e,r,n)})},trigger:function(e,t){return this.each(function(){x.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?x.event.trigger(e,n,r,!0):t}});var st=/^.[^:#\[\.,]*$/,lt=/^(?:parents|prev(?:Until|All))/,ut=x.expr.match.needsContext,ct={children:!0,contents:!0,next:!0,prev:!0};x.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(x(e).filter(function(){for(t=0;i>t;t++)if(x.contains(r[t],this))return!0}));for(t=0;i>t;t++)x.find(e,r[t],n);return n=this.pushStack(i>1?x.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},has:function(e){var t,n=x(e,this),r=n.length;return this.filter(function(){for(t=0;r>t;t++)if(x.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(ft(this,e||[],!0))},filter:function(e){return this.pushStack(ft(this,e||[],!1))},is:function(e){return!!ft(this,"string"==typeof e&&ut.test(e)?x(e):e||[],!1).length},closest:function(e,t){var n,r=0,i=this.length,o=[],a=ut.test(e)||"string"!=typeof e?x(e,t||this.context):0;for(;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(11>n.nodeType&&(a?a.index(n)>-1:1===n.nodeType&&x.find.matchesSelector(n,e))){n=o.push(n);break}return this.pushStack(o.length>1?x.unique(o):o)},index:function(e){return e?"string"==typeof e?x.inArray(this[0],x(e)):x.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof e?x(e,t):x.makeArray(e&&e.nodeType?[e]:e),r=x.merge(this.get(),n);return this.pushStack(x.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function pt(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}x.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return x.dir(e,"parentNode")},parentsUntil:function(e,t,n){return x.dir(e,"parentNode",n)},next:function(e){return pt(e,"nextSibling")},prev:function(e){return pt(e,"previousSibling")},nextAll:function(e){return x.dir(e,"nextSibling")},prevAll:function(e){return x.dir(e,"previousSibling")},nextUntil:function(e,t,n){return x.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return x.dir(e,"previousSibling",n)},siblings:function(e){return x.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return x.sibling(e.firstChild)},contents:function(e){return x.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:x.merge([],e.childNodes)}},function(e,t){x.fn[e]=function(n,r){var i=x.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=x.filter(r,i)),this.length>1&&(ct[e]||(i=x.unique(i)),lt.test(e)&&(i=i.reverse())),this.pushStack(i)}}),x.extend({filter:function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?x.find.matchesSelector(r,e)?[r]:[]:x.find.matches(e,x.grep(t,function(e){return 1===e.nodeType}))},dir:function(e,n,r){var i=[],o=e[n];while(o&&9!==o.nodeType&&(r===t||1!==o.nodeType||!x(o).is(r)))1===o.nodeType&&i.push(o),o=o[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});function ft(e,t,n){if(x.isFunction(t))return x.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return x.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(st.test(t))return x.filter(t,e,n);t=x.filter(t,e)}return x.grep(e,function(e){return x.inArray(e,t)>=0!==n})}function dt(e){var t=ht.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}var ht="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",gt=/ jQuery\d+="(?:null|\d+)"/g,mt=RegExp("<(?:"+ht+")[\\s/>]","i"),yt=/^\s+/,vt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bt=/<([\w:]+)/,xt=/<tbody/i,wt=/<|&#?\w+;/,Tt=/<(?:script|style|link)/i,Ct=/^(?:checkbox|radio)$/i,Nt=/checked\s*(?:[^=]|=\s*.checked.)/i,kt=/^$|\/(?:java|ecma)script/i,Et=/^true\/(.*)/,St=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,At={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:x.support.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},jt=dt(a),Dt=jt.appendChild(a.createElement("div"));At.optgroup=At.option,At.tbody=At.tfoot=At.colgroup=At.caption=At.thead,At.th=At.td,x.fn.extend({text:function(e){return x.access(this,function(e){return e===t?x.text(this):this.empty().append((this[0]&&this[0].ownerDocument||a).createTextNode(e))},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){var n,r=e?x.filter(e,this):this,i=0;for(;null!=(n=r[i]);i++)t||1!==n.nodeType||x.cleanData(Ft(n)),n.parentNode&&(t&&x.contains(n.ownerDocument,n)&&_t(Ft(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){var e,t=0;for(;null!=(e=this[t]);t++){1===e.nodeType&&x.cleanData(Ft(e,!1));while(e.firstChild)e.removeChild(e.firstChild);e.options&&x.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return x.clone(this,e,t)})},html:function(e){return x.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return 1===n.nodeType?n.innerHTML.replace(gt,""):t;if(!("string"!=typeof e||Tt.test(e)||!x.support.htmlSerialize&&mt.test(e)||!x.support.leadingWhitespace&&yt.test(e)||At[(bt.exec(e)||["",""])[1].toLowerCase()])){e=e.replace(vt,"<$1></$2>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(x.cleanData(Ft(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=x.map(this,function(e){return[e.nextSibling,e.parentNode]}),t=0;return this.domManip(arguments,function(n){var r=e[t++],i=e[t++];i&&(r&&r.parentNode!==i&&(r=this.nextSibling),x(this).remove(),i.insertBefore(n,r))},!0),t?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t,n){e=d.apply([],e);var r,i,o,a,s,l,u=0,c=this.length,p=this,f=c-1,h=e[0],g=x.isFunction(h);if(g||!(1>=c||"string"!=typeof h||x.support.checkClone)&&Nt.test(h))return this.each(function(r){var i=p.eq(r);g&&(e[0]=h.call(this,r,i.html())),i.domManip(e,t,n)});if(c&&(l=x.buildFragment(e,this[0].ownerDocument,!1,!n&&this),r=l.firstChild,1===l.childNodes.length&&(l=r),r)){for(a=x.map(Ft(l,"script"),Ht),o=a.length;c>u;u++)i=l,u!==f&&(i=x.clone(i,!0,!0),o&&x.merge(a,Ft(i,"script"))),t.call(this[u],i,u);if(o)for(s=a[a.length-1].ownerDocument,x.map(a,qt),u=0;o>u;u++)i=a[u],kt.test(i.type||"")&&!x._data(i,"globalEval")&&x.contains(s,i)&&(i.src?x._evalUrl(i.src):x.globalEval((i.text||i.textContent||i.innerHTML||"").replace(St,"")));l=r=null}return this}});function Lt(e,t){return x.nodeName(e,"table")&&x.nodeName(1===t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function Ht(e){return e.type=(null!==x.find.attr(e,"type"))+"/"+e.type,e}function qt(e){var t=Et.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function _t(e,t){var n,r=0;for(;null!=(n=e[r]);r++)x._data(n,"globalEval",!t||x._data(t[r],"globalEval"))}function Mt(e,t){if(1===t.nodeType&&x.hasData(e)){var n,r,i,o=x._data(e),a=x._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;i>r;r++)x.event.add(t,n,s[n][r])}a.data&&(a.data=x.extend({},a.data))}}function Ot(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!x.support.noCloneEvent&&t[x.expando]){i=x._data(t);for(r in i.events)x.removeEvent(t,r,i.handle);t.removeAttribute(x.expando)}"script"===n&&t.text!==e.text?(Ht(t).text=e.text,qt(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),x.support.html5Clone&&e.innerHTML&&!x.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Ct.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}}x.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){x.fn[e]=function(e){var n,r=0,i=[],o=x(e),a=o.length-1;for(;a>=r;r++)n=r===a?this:this.clone(!0),x(o[r])[t](n),h.apply(i,n.get());return this.pushStack(i)}});function Ft(e,n){var r,o,a=0,s=typeof e.getElementsByTagName!==i?e.getElementsByTagName(n||"*"):typeof e.querySelectorAll!==i?e.querySelectorAll(n||"*"):t;if(!s)for(s=[],r=e.childNodes||e;null!=(o=r[a]);a++)!n||x.nodeName(o,n)?s.push(o):x.merge(s,Ft(o,n));return n===t||n&&x.nodeName(e,n)?x.merge([e],s):s}function Bt(e){Ct.test(e.type)&&(e.defaultChecked=e.checked)}x.extend({clone:function(e,t,n){var r,i,o,a,s,l=x.contains(e.ownerDocument,e);if(x.support.html5Clone||x.isXMLDoc(e)||!mt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(Dt.innerHTML=e.outerHTML,Dt.removeChild(o=Dt.firstChild)),!(x.support.noCloneEvent&&x.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||x.isXMLDoc(e)))for(r=Ft(o),s=Ft(e),a=0;null!=(i=s[a]);++a)r[a]&&Ot(i,r[a]);if(t)if(n)for(s=s||Ft(e),r=r||Ft(o),a=0;null!=(i=s[a]);a++)Mt(i,r[a]);else Mt(e,o);return r=Ft(o,"script"),r.length>0&&_t(r,!l&&Ft(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){var i,o,a,s,l,u,c,p=e.length,f=dt(t),d=[],h=0;for(;p>h;h++)if(o=e[h],o||0===o)if("object"===x.type(o))x.merge(d,o.nodeType?[o]:o);else if(wt.test(o)){s=s||f.appendChild(t.createElement("div")),l=(bt.exec(o)||["",""])[1].toLowerCase(),c=At[l]||At._default,s.innerHTML=c[1]+o.replace(vt,"<$1></$2>")+c[2],i=c[0];while(i--)s=s.lastChild;if(!x.support.leadingWhitespace&&yt.test(o)&&d.push(t.createTextNode(yt.exec(o)[0])),!x.support.tbody){o="table"!==l||xt.test(o)?"<table>"!==c[1]||xt.test(o)?0:s:s.firstChild,i=o&&o.childNodes.length;while(i--)x.nodeName(u=o.childNodes[i],"tbody")&&!u.childNodes.length&&o.removeChild(u)}x.merge(d,s.childNodes),s.textContent="";while(s.firstChild)s.removeChild(s.firstChild);s=f.lastChild}else d.push(t.createTextNode(o));s&&f.removeChild(s),x.support.appendChecked||x.grep(Ft(d,"input"),Bt),h=0;while(o=d[h++])if((!r||-1===x.inArray(o,r))&&(a=x.contains(o.ownerDocument,o),s=Ft(f.appendChild(o),"script"),a&&_t(s),n)){i=0;while(o=s[i++])kt.test(o.type||"")&&n.push(o)}return s=null,f},cleanData:function(e,t){var n,r,o,a,s=0,l=x.expando,u=x.cache,c=x.support.deleteExpando,f=x.event.special;for(;null!=(n=e[s]);s++)if((t||x.acceptData(n))&&(o=n[l],a=o&&u[o])){if(a.events)for(r in a.events)f[r]?x.event.remove(n,r):x.removeEvent(n,r,a.handle);
6u[o]&&(delete u[o],c?delete n[l]:typeof n.removeAttribute!==i?n.removeAttribute(l):n[l]=null,p.push(o))}},_evalUrl:function(e){return x.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),x.fn.extend({wrapAll:function(e){if(x.isFunction(e))return this.each(function(t){x(this).wrapAll(e.call(this,t))});if(this[0]){var t=x(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&1===e.firstChild.nodeType)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return x.isFunction(e)?this.each(function(t){x(this).wrapInner(e.call(this,t))}):this.each(function(){var t=x(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=x.isFunction(e);return this.each(function(n){x(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){x.nodeName(this,"body")||x(this).replaceWith(this.childNodes)}).end()}});var Pt,Rt,Wt,$t=/alpha\([^)]*\)/i,It=/opacity\s*=\s*([^)]*)/,zt=/^(top|right|bottom|left)$/,Xt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,Vt=RegExp("^("+w+")(.*)$","i"),Yt=RegExp("^("+w+")(?!px)[a-z%]+$","i"),Jt=RegExp("^([+-])=("+w+")","i"),Gt={BODY:"block"},Qt={position:"absolute",visibility:"hidden",display:"block"},Kt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bottom","Left"],en=["Webkit","O","Moz","ms"];function tn(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=en.length;while(i--)if(t=en[i]+n,t in e)return t;return r}function nn(e,t){return e=t||e,"none"===x.css(e,"display")||!x.contains(e.ownerDocument,e)}function rn(e,t){var n,r,i,o=[],a=0,s=e.length;for(;s>a;a++)r=e[a],r.style&&(o[a]=x._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=x._data(r,"olddisplay",ln(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&x._data(r,"olddisplay",i?n:x.css(r,"display"))));for(a=0;s>a;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}x.fn.extend({css:function(e,n){return x.access(this,function(e,n,r){var i,o,a={},s=0;if(x.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=x.css(e,n[s],!1,o);return a}return r!==t?x.style(e,n,r):x.css(e,n)},e,n,arguments.length>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){nn(this)?x(this).show():x(this).hide()})}}),x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":x.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,l=x.camelCase(n),u=e.style;if(n=x.cssProps[l]||(x.cssProps[l]=tn(u,l)),s=x.cssHooks[n]||x.cssHooks[l],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:u[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(x.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||x.cssNumber[l]||(r+="px"),x.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(u[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{u[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,l=x.camelCase(n);return n=x.cssProps[l]||(x.cssProps[l]=tn(e.style,l)),s=x.cssHooks[n]||x.cssHooks[l],s&&"get"in s&&(a=s.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Kt&&(a=Kt[n]),""===r||r?(o=parseFloat(a),r===!0||x.isNumeric(o)?o||0:a):a}}),e.getComputedStyle?(Rt=function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s.getPropertyValue(n)||s[n]:t,u=e.style;return s&&(""!==l||x.contains(e.ownerDocument,e)||(l=x.style(e,n)),Yt.test(l)&&Ut.test(n)&&(i=u.width,o=u.minWidth,a=u.maxWidth,u.minWidth=u.maxWidth=u.width=l,l=s.width,u.width=i,u.minWidth=o,u.maxWidth=a)),l}):a.documentElement.currentStyle&&(Rt=function(e){return e.currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s[n]:t,u=e.style;return null==l&&u&&u[n]&&(l=u[n]),Yt.test(l)&&!zt.test(n)&&(i=u.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),u.left="fontSize"===n?"1em":l,l=u.pixelLeft+"px",u.left=i,a&&(o.left=a)),""===l?"auto":l});function on(e,t,n){var r=Vt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function an(e,t,n,r,i){var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;for(;4>o;o+=2)"margin"===n&&(a+=x.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=x.css(e,"padding"+Zt[o],!0,i)),"margin"!==n&&(a-=x.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=x.css(e,"padding"+Zt[o],!0,i),"padding"!==n&&(a+=x.css(e,"border"+Zt[o]+"Width",!0,i)));return a}function sn(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Rt(e),a=x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=Wt(e,t,o),(0>i||null==i)&&(i=e.style[t]),Yt.test(i))return i;r=a&&(x.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+an(e,t,n||(a?"border":"content"),r,o)+"px"}function ln(e){var t=a,n=Gt[e];return n||(n=un(e,t),"none"!==n&&n||(Pt=(Pt||x("<iframe frameborder='0' width='0' height='0'/>").css("cssText","display:block !important")).appendTo(t.documentElement),t=(Pt[0].contentWindow||Pt[0].contentDocument).document,t.write("<!doctype html><html><body>"),t.close(),n=un(e,t),Pt.detach()),Gt[e]=n),n}function un(e,t){var n=x(t.createElement(e)).appendTo(t.body),r=x.css(n[0],"display");return n.remove(),r}x.each(["height","width"],function(e,n){x.cssHooks[n]={get:function(e,r,i){return r?0===e.offsetWidth&&Xt.test(x.css(e,"display"))?x.swap(e,Qt,function(){return sn(e,n,i)}):sn(e,n,i):t},set:function(e,t,r){var i=r&&Rt(e);return on(e,t,r?an(e,n,r,x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,i),i):0)}}}),x.support.opacity||(x.cssHooks.opacity={get:function(e,t){return It.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=x.isNumeric(t)?"alpha(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""===x.trim(o.replace($t,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""===t||r&&!r.filter)||(n.filter=$t.test(o)?o.replace($t,i):o+" "+i)}}),x(function(){x.support.reliableMarginRight||(x.cssHooks.marginRight={get:function(e,n){return n?x.swap(e,{display:"inline-block"},Wt,[e,"marginRight"]):t}}),!x.support.pixelPosition&&x.fn.position&&x.each(["top","left"],function(e,n){x.cssHooks[n]={get:function(e,r){return r?(r=Wt(e,n),Yt.test(r)?x(e).position()[n]+"px":r):t}}})}),x.expr&&x.expr.filters&&(x.expr.filters.hidden=function(e){return 0>=e.offsetWidth&&0>=e.offsetHeight||!x.support.reliableHiddenOffsets&&"none"===(e.style&&e.style.display||x.css(e,"display"))},x.expr.filters.visible=function(e){return!x.expr.filters.hidden(e)}),x.each({margin:"",padding:"",border:"Width"},function(e,t){x.cssHooks[e+t]={expand:function(n){var r=0,i={},o="string"==typeof n?n.split(" "):[n];for(;4>r;r++)i[e+Zt[r]+t]=o[r]||o[r-2]||o[0];return i}},Ut.test(e)||(x.cssHooks[e+t].set=on)});var cn=/%20/g,pn=/\[\]$/,fn=/\r?\n/g,dn=/^(?:submit|button|image|reset|file)$/i,hn=/^(?:input|select|textarea|keygen)/i;x.fn.extend({serialize:function(){return x.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=x.prop(this,"elements");return e?x.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!x(this).is(":disabled")&&hn.test(this.nodeName)&&!dn.test(e)&&(this.checked||!Ct.test(e))}).map(function(e,t){var n=x(this).val();return null==n?null:x.isArray(n)?x.map(n,function(e){return{name:t.name,value:e.replace(fn,"\r\n")}}):{name:t.name,value:n.replace(fn,"\r\n")}}).get()}}),x.param=function(e,n){var r,i=[],o=function(e,t){t=x.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(n===t&&(n=x.ajaxSettings&&x.ajaxSettings.traditional),x.isArray(e)||e.jquery&&!x.isPlainObject(e))x.each(e,function(){o(this.name,this.value)});else for(r in e)gn(r,e[r],n,o);return i.join("&").replace(cn,"+")};function gn(e,t,n,r){var i;if(x.isArray(t))x.each(t,function(t,i){n||pn.test(e)?r(e,i):gn(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==x.type(t))r(e,t);else for(i in t)gn(e+"["+i+"]",t[i],n,r)}x.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 contextmenu".split(" "),function(e,t){x.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),x.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}});var mn,yn,vn=x.now(),bn=/\?/,xn=/#.*$/,wn=/([?&])_=[^&]*/,Tn=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Cn=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Nn=/^(?:GET|HEAD)$/,kn=/^\/\//,En=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Sn=x.fn.load,An={},jn={},Dn="*/".concat("*");try{yn=o.href}catch(Ln){yn=a.createElement("a"),yn.href="",yn=yn.href}mn=En.exec(yn.toLowerCase())||[];function Hn(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(T)||[];if(x.isFunction(n))while(r=o[i++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function qn(e,n,r,i){var o={},a=e===jn;function s(l){var u;return o[l]=!0,x.each(e[l]||[],function(e,l){var c=l(n,r,i);return"string"!=typeof c||a||o[c]?a?!(u=c):t:(n.dataTypes.unshift(c),s(c),!1)}),u}return s(n.dataTypes[0])||!o["*"]&&s("*")}function _n(e,n){var r,i,o=x.ajaxSettings.flatOptions||{};for(i in n)n[i]!==t&&((o[i]?e:r||(r={}))[i]=n[i]);return r&&x.extend(!0,e,r),e}x.fn.load=function(e,n,r){if("string"!=typeof e&&Sn)return Sn.apply(this,arguments);var i,o,a,s=this,l=e.indexOf(" ");return l>=0&&(i=e.slice(l,e.length),e=e.slice(0,l)),x.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(a="POST"),s.length>0&&x.ajax({url:e,type:a,dataType:"html",data:n}).done(function(e){o=arguments,s.html(i?x("<div>").append(x.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){s.each(r,o||[e.responseText,t,e])}),this},x.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){x.fn[t]=function(e){return this.on(t,e)}}),x.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:yn,type:"GET",isLocal:Cn.test(mn[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Dn,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":x.parseJSON,"text xml":x.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?_n(_n(e,x.ajaxSettings),t):_n(x.ajaxSettings,e)},ajaxPrefilter:Hn(An),ajaxTransport:Hn(jn),ajax:function(e,n){"object"==typeof e&&(n=e,e=t),n=n||{};var r,i,o,a,s,l,u,c,p=x.ajaxSetup({},n),f=p.context||p,d=p.context&&(f.nodeType||f.jquery)?x(f):x.event,h=x.Deferred(),g=x.Callbacks("once memory"),m=p.statusCode||{},y={},v={},b=0,w="canceled",C={readyState:0,getResponseHeader:function(e){var t;if(2===b){if(!c){c={};while(t=Tn.exec(a))c[t[1].toLowerCase()]=t[2]}t=c[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===b?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return b||(e=v[n]=v[n]||e,y[e]=t),this},overrideMimeType:function(e){return b||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>b)for(t in e)m[t]=[m[t],e[t]];else C.always(e[C.status]);return this},abort:function(e){var t=e||w;return u&&u.abort(t),k(0,t),this}};if(h.promise(C).complete=g.add,C.success=C.done,C.error=C.fail,p.url=((e||p.url||yn)+"").replace(xn,"").replace(kn,mn[1]+"//"),p.type=n.method||n.type||p.method||p.type,p.dataTypes=x.trim(p.dataType||"*").toLowerCase().match(T)||[""],null==p.crossDomain&&(r=En.exec(p.url.toLowerCase()),p.crossDomain=!(!r||r[1]===mn[1]&&r[2]===mn[2]&&(r[3]||("http:"===r[1]?"80":"443"))===(mn[3]||("http:"===mn[1]?"80":"443")))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=x.param(p.data,p.traditional)),qn(An,p,n,C),2===b)return C;l=p.global,l&&0===x.active++&&x.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!Nn.test(p.type),o=p.url,p.hasContent||(p.data&&(o=p.url+=(bn.test(o)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=wn.test(o)?o.replace(wn,"$1_="+vn++):o+(bn.test(o)?"&":"?")+"_="+vn++)),p.ifModified&&(x.lastModified[o]&&C.setRequestHeader("If-Modified-Since",x.lastModified[o]),x.etag[o]&&C.setRequestHeader("If-None-Match",x.etag[o])),(p.data&&p.hasContent&&p.contentType!==!1||n.contentType)&&C.setRequestHeader("Content-Type",p.contentType),C.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+Dn+"; q=0.01":""):p.accepts["*"]);for(i in p.headers)C.setRequestHeader(i,p.headers[i]);if(p.beforeSend&&(p.beforeSend.call(f,C,p)===!1||2===b))return C.abort();w="abort";for(i in{success:1,error:1,complete:1})C[i](p[i]);if(u=qn(jn,p,n,C)){C.readyState=1,l&&d.trigger("ajaxSend",[C,p]),p.async&&p.timeout>0&&(s=setTimeout(function(){C.abort("timeout")},p.timeout));try{b=1,u.send(y,k)}catch(N){if(!(2>b))throw N;k(-1,N)}}else k(-1,"No Transport");function k(e,n,r,i){var c,y,v,w,T,N=n;2!==b&&(b=2,s&&clearTimeout(s),u=t,a=i||"",C.readyState=e>0?4:0,c=e>=200&&300>e||304===e,r&&(w=Mn(p,C,r)),w=On(p,w,C,c),c?(p.ifModified&&(T=C.getResponseHeader("Last-Modified"),T&&(x.lastModified[o]=T),T=C.getResponseHeader("etag"),T&&(x.etag[o]=T)),204===e||"HEAD"===p.type?N="nocontent":304===e?N="notmodified":(N=w.state,y=w.data,v=w.error,c=!v)):(v=N,(e||!N)&&(N="error",0>e&&(e=0))),C.status=e,C.statusText=(n||N)+"",c?h.resolveWith(f,[y,N,C]):h.rejectWith(f,[C,N,v]),C.statusCode(m),m=t,l&&d.trigger(c?"ajaxSuccess":"ajaxError",[C,p,c?y:v]),g.fireWith(f,[C,N]),l&&(d.trigger("ajaxComplete",[C,p]),--x.active||x.event.trigger("ajaxStop")))}return C},getJSON:function(e,t,n){return x.get(e,t,n,"json")},getScript:function(e,n){return x.get(e,t,n,"script")}}),x.each(["get","post"],function(e,n){x[n]=function(e,r,i,o){return x.isFunction(r)&&(o=o||i,i=r,r=t),x.ajax({url:e,type:n,dataType:o,data:r,success:i})}});function Mn(e,n,r){var i,o,a,s,l=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),o===t&&(o=e.mimeType||n.getResponseHeader("Content-Type"));if(o)for(s in l)if(l[s]&&l[s].test(o)){u.unshift(s);break}if(u[0]in r)a=u[0];else{for(s in r){if(!u[0]||e.converters[s+" "+u[0]]){a=s;break}i||(i=s)}a=a||i}return a?(a!==u[0]&&u.unshift(a),r[a]):t}function On(e,t,n,r){var i,o,a,s,l,u={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)u[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=o,o=c.shift())if("*"===o)o=l;else if("*"!==l&&l!==o){if(a=u[l+" "+o]||u["* "+o],!a)for(i in u)if(s=i.split(" "),s[1]===o&&(a=u[l+" "+s[0]]||u["* "+s[0]])){a===!0?a=u[i]:u[i]!==!0&&(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(p){return{state:"parsererror",error:a?p:"No conversion from "+l+" to "+o}}}return{state:"success",data:t}}x.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return x.globalEval(e),e}}}),x.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),x.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=a.head||x("head")[0]||a.documentElement;return{send:function(t,i){n=a.createElement("script"),n.async=!0,e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,t){(t||!n.readyState||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystatechange=null,n.parentNode&&n.parentNode.removeChild(n),n=null,t||i(200,"success"))},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(t,!0)}}}});var Fn=[],Bn=/(=)\?(?=&|$)|\?\?/;x.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Fn.pop()||x.expando+"_"+vn++;return this[e]=!0,e}}),x.ajaxPrefilter("json jsonp",function(n,r,i){var o,a,s,l=n.jsonp!==!1&&(Bn.test(n.url)?"url":"string"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Bn.test(n.data)&&"data");return l||"jsonp"===n.dataTypes[0]?(o=n.jsonpCallback=x.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,l?n[l]=n[l].replace(Bn,"$1"+o):n.jsonp!==!1&&(n.url+=(bn.test(n.url)?"&":"?")+n.jsonp+"="+o),n.converters["script json"]=function(){return s||x.error(o+" was not called"),s[0]},n.dataTypes[0]="json",a=e[o],e[o]=function(){s=arguments},i.always(function(){e[o]=a,n[o]&&(n.jsonpCallback=r.jsonpCallback,Fn.push(o)),s&&x.isFunction(a)&&a(s[0]),s=a=t}),"script"):t});var Pn,Rn,Wn=0,$n=e.ActiveXObject&&function(){var e;for(e in Pn)Pn[e](t,!0)};function In(){try{return new e.XMLHttpRequest}catch(t){}}function zn(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}x.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&In()||zn()}:In,Rn=x.ajaxSettings.xhr(),x.support.cors=!!Rn&&"withCredentials"in Rn,Rn=x.support.ajax=!!Rn,Rn&&x.ajaxTransport(function(n){if(!n.crossDomain||x.support.cors){var r;return{send:function(i,o){var a,s,l=n.xhr();if(n.username?l.open(n.type,n.url,n.async,n.username,n.password):l.open(n.type,n.url,n.async),n.xhrFields)for(s in n.xhrFields)l[s]=n.xhrFields[s];n.mimeType&&l.overrideMimeType&&l.overrideMimeType(n.mimeType),n.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");try{for(s in i)l.setRequestHeader(s,i[s])}catch(u){}l.send(n.hasContent&&n.data||null),r=function(e,i){var s,u,c,p;try{if(r&&(i||4===l.readyState))if(r=t,a&&(l.onreadystatechange=x.noop,$n&&delete Pn[a]),i)4!==l.readyState&&l.abort();else{p={},s=l.status,u=l.getAllResponseHeaders(),"string"==typeof l.responseText&&(p.text=l.responseText);try{c=l.statusText}catch(f){c=""}s||!n.isLocal||n.crossDomain?1223===s&&(s=204):s=p.text?200:404}}catch(d){i||o(-1,d)}p&&o(s,c,p,u)},n.async?4===l.readyState?setTimeout(r):(a=++Wn,$n&&(Pn||(Pn={},x(e).unload($n)),Pn[a]=r),l.onreadystatechange=r):r()},abort:function(){r&&r(t,!0)}}}});var Xn,Un,Vn=/^(?:toggle|show|hide)$/,Yn=RegExp("^(?:([+-])=|)("+w+")([a-z%]*)$","i"),Jn=/queueHooks$/,Gn=[nr],Qn={"*":[function(e,t){var n=this.createTween(e,t),r=n.cur(),i=Yn.exec(t),o=i&&i[3]||(x.cssNumber[e]?"":"px"),a=(x.cssNumber[e]||"px"!==o&&+r)&&Yn.exec(x.css(n.elem,e)),s=1,l=20;if(a&&a[3]!==o){o=o||a[3],i=i||[],a=+r||1;do s=s||".5",a/=s,x.style(n.elem,e,a+o);while(s!==(s=n.cur()/r)&&1!==s&&--l)}return i&&(a=n.start=+a||+r||0,n.unit=o,n.end=i[1]?a+(i[1]+1)*i[2]:+i[2]),n}]};function Kn(){return setTimeout(function(){Xn=t}),Xn=x.now()}function Zn(e,t,n){var r,i=(Qn[t]||[]).concat(Qn["*"]),o=0,a=i.length;for(;a>o;o++)if(r=i[o].call(n,t,e))return r}function er(e,t,n){var r,i,o=0,a=Gn.length,s=x.Deferred().always(function(){delete l.elem}),l=function(){if(i)return!1;var t=Xn||Kn(),n=Math.max(0,u.startTime+u.duration-t),r=n/u.duration||0,o=1-r,a=0,l=u.tweens.length;for(;l>a;a++)u.tweens[a].run(o);return s.notifyWith(e,[u,o,n]),1>o&&l?n:(s.resolveWith(e,[u]),!1)},u=s.promise({elem:e,props:x.extend({},t),opts:x.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Xn||Kn(),duration:n.duration,tweens:[],createTween:function(t,n){var r=x.Tween(e,u.opts,t,n,u.opts.specialEasing[t]||u.opts.easing);return u.tweens.push(r),r},stop:function(t){var n=0,r=t?u.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)u.tweens[n].run(1);return t?s.resolveWith(e,[u,t]):s.rejectWith(e,[u,t]),this}}),c=u.props;for(tr(c,u.opts.specialEasing);a>o;o++)if(r=Gn[o].call(u,e,c,u.opts))return r;return x.map(c,Zn,u),x.isFunction(u.opts.start)&&u.opts.start.call(e,u),x.fx.timer(x.extend(l,{elem:e,anim:u,queue:u.opts.queue})),u.progress(u.opts.progress).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always)}function tr(e,t){var n,r,i,o,a;for(n in e)if(r=x.camelCase(n),i=t[r],o=e[n],x.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),a=x.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}x.Animation=x.extend(er,{tweener:function(e,t){x.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;i>r;r++)n=e[r],Qn[n]=Qn[n]||[],Qn[n].unshift(t)},prefilter:function(e,t){t?Gn.unshift(e):Gn.push(e)}});function nr(e,t,n){var r,i,o,a,s,l,u=this,c={},p=e.style,f=e.nodeType&&nn(e),d=x._data(e,"fxshow");n.queue||(s=x._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,l=s.empty.fire,s.empty.fire=function(){s.unqueued||l()}),s.unqueued++,u.always(function(){u.always(function(){s.unqueued--,x.queue(e,"fx").length||s.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[p.overflow,p.overflowX,p.overflowY],"inline"===x.css(e,"display")&&"none"===x.css(e,"float")&&(x.support.inlineBlockNeedsLayout&&"inline"!==ln(e.nodeName)?p.zoom=1:p.display="inline-block")),n.overflow&&(p.overflow="hidden",x.support.shrinkWrapBlocks||u.always(function(){p.overflow=n.overflow[0],p.overflowX=n.overflow[1],p.overflowY=n.overflow[2]}));for(r in t)if(i=t[r],Vn.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(f?"hide":"show"))continue;c[r]=d&&d[r]||x.style(e,r)}if(!x.isEmptyObject(c)){d?"hidden"in d&&(f=d.hidden):d=x._data(e,"fxshow",{}),o&&(d.hidden=!f),f?x(e).show():u.done(function(){x(e).hide()}),u.done(function(){var t;x._removeData(e,"fxshow");for(t in c)x.style(e,t,c[t])});for(r in c)a=Zn(f?d[r]:0,r,u),r in d||(d[r]=a.start,f&&(a.end=a.start,a.start="width"===r||"height"===r?1:0))}}function rr(e,t,n,r,i){return new rr.prototype.init(e,t,n,r,i)}x.Tween=rr,rr.prototype={constructor:rr,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(x.cssNumber[n]?"":"px")},cur:function(){var e=rr.propHooks[this.prop];return e&&e.get?e.get(this):rr.propHooks._default.get(this)},run:function(e){var t,n=rr.propHooks[this.prop];return this.pos=t=this.options.duration?x.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):rr.propHooks._default.set(this),this}},rr.prototype.init.prototype=rr.prototype,rr.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=x.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){x.fx.step[e.prop]?x.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[x.cssProps[e.prop]]||x.cssHooks[e.prop])?x.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},rr.propHooks.scrollTop=rr.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},x.each(["toggle","show","hide"],function(e,t){var n=x.fn[t];x.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(ir(t,!0),e,r,i)}}),x.fn.extend({fadeTo:function(e,t,n,r){return this.filter(nn).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=x.isEmptyObject(e),o=x.speed(t,n,r),a=function(){var t=er(this,x.extend({},e),o);(i||x._data(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:function(e,n,r){var i=function(e){var t=e.stop;delete e.stop,t(r)};return"string"!=typeof e&&(r=n,n=e,e=t),n&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,n=null!=e&&e+"queueHooks",o=x.timers,a=x._data(this);if(n)a[n]&&a[n].stop&&i(a[n]);else for(n in a)a[n]&&a[n].stop&&Jn.test(n)&&i(a[n]);for(n=o.length;n--;)o[n].elem!==this||null!=e&&o[n].queue!==e||(o[n].anim.stop(r),t=!1,o.splice(n,1));(t||!r)&&x.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=x._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=x.timers,a=r?r.length:0;for(n.finish=!0,x.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}});function ir(e,t){var n,r={height:e},i=0;for(t=t?1:0;4>i;i+=2-t)n=Zt[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}x.each({slideDown:ir("show"),slideUp:ir("hide"),slideToggle:ir("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){x.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),x.speed=function(e,t,n){var r=e&&"object"==typeof e?x.extend({},e):{complete:n||!n&&t||x.isFunction(e)&&e,duration:e,easing:n&&t||t&&!x.isFunction(t)&&t};return r.duration=x.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in x.fx.speeds?x.fx.speeds[r.duration]:x.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){x.isFunction(r.old)&&r.old.call(this),r.queue&&x.dequeue(this,r.queue)},r},x.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},x.timers=[],x.fx=rr.prototype.init,x.fx.tick=function(){var e,n=x.timers,r=0;for(Xn=x.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||x.fx.stop(),Xn=t},x.fx.timer=function(e){e()&&x.timers.push(e)&&x.fx.start()},x.fx.interval=13,x.fx.start=function(){Un||(Un=setInterval(x.fx.tick,x.fx.interval))},x.fx.stop=function(){clearInterval(Un),Un=null},x.fx.speeds={slow:600,fast:200,_default:400},x.fx.step={},x.expr&&x.expr.filters&&(x.expr.filters.animated=function(e){return x.grep(x.timers,function(t){return e===t.elem}).length}),x.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){x.offset.setOffset(this,e,t)});var n,r,o={top:0,left:0},a=this[0],s=a&&a.ownerDocument;if(s)return n=s.documentElement,x.contains(n,a)?(typeof a.getBoundingClientRect!==i&&(o=a.getBoundingClientRect()),r=or(s),{top:o.top+(r.pageYOffset||n.scrollTop)-(n.clientTop||0),left:o.left+(r.pageXOffset||n.scrollLeft)-(n.clientLeft||0)}):o},x.offset={setOffset:function(e,t,n){var r=x.css(e,"position");"static"===r&&(e.style.position="relative");var i=x(e),o=i.offset(),a=x.css(e,"top"),s=x.css(e,"left"),l=("absolute"===r||"fixed"===r)&&x.inArray("auto",[a,s])>-1,u={},c={},p,f;l?(c=i.position(),p=c.top,f=c.left):(p=parseFloat(a)||0,f=parseFloat(s)||0),x.isFunction(t)&&(t=t.call(e,n,o)),null!=t.top&&(u.top=t.top-o.top+p),null!=t.left&&(u.left=t.left-o.left+f),"using"in t?t.using.call(e,u):i.css(u)}},x.fn.extend({position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===x.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),x.nodeName(e[0],"html")||(n=e.offset()),n.top+=x.css(e[0],"borderTopWidth",!0),n.left+=x.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-x.css(r,"marginTop",!0),left:t.left-n.left-x.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||s;while(e&&!x.nodeName(e,"html")&&"static"===x.css(e,"position"))e=e.offsetParent;return e||s})}}),x.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);x.fn[e]=function(i){return x.access(this,function(e,i,o){var a=or(e);return o===t?a?n in a?a[n]:a.document.documentElement[i]:e[i]:(a?a.scrollTo(r?x(a).scrollLeft():o,r?o:x(a).scrollTop()):e[i]=o,t)},e,i,arguments.length,null)}});function or(e){return x.isWindow(e)?e:9===e.nodeType?e.defaultView||e.parentWindow:!1}x.each({Height:"height",Width:"width"},function(e,n){x.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){x.fn[i]=function(i,o){var a=arguments.length&&(r||"boolean"!=typeof i),s=r||(i===!0||o===!0?"margin":"border");return x.access(this,function(n,r,i){var o;return x.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(o=n.documentElement,Math.max(n.body["scroll"+e],o["scroll"+e],n.body["offset"+e],o["offset"+e],o["client"+e])):i===t?x.css(n,r,s):x.style(n,r,i,s)},n,a?i:t,a,null)}})}),x.fn.size=function(){return this.length},x.fn.andSelf=x.fn.addBack,"object"==typeof module&&module&&"object"==typeof module.exports?module.exports=x:(e.jQuery=e.$=x,"function"==typeof define&&define.amd&&define("jquery",[],function(){return x}))})(window);
  
1// Underscore.js 1.5.2
2// http://underscorejs.org
3// (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
4// Underscore may be freely distributed under the MIT license.
5(function(){var n=this,t=n._,r={},e=Array.prototype,u=Object.prototype,i=Function.prototype,a=e.push,o=e.slice,c=e.concat,l=u.toString,f=u.hasOwnProperty,s=e.forEach,p=e.map,h=e.reduce,v=e.reduceRight,g=e.filter,d=e.every,m=e.some,y=e.indexOf,b=e.lastIndexOf,x=Array.isArray,w=Object.keys,_=i.bind,j=function(n){return n instanceof j?n:this instanceof j?(this._wrapped=n,void 0):new j(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=j),exports._=j):n._=j,j.VERSION="1.5.2";var A=j.each=j.forEach=function(n,t,e){if(null!=n)if(s&&n.forEach===s)n.forEach(t,e);else if(n.length===+n.length){for(var u=0,i=n.length;i>u;u++)if(t.call(e,n[u],u,n)===r)return}else for(var a=j.keys(n),u=0,i=a.length;i>u;u++)if(t.call(e,n[a[u]],a[u],n)===r)return};j.map=j.collect=function(n,t,r){var e=[];return null==n?e:p&&n.map===p?n.map(t,r):(A(n,function(n,u,i){e.push(t.call(r,n,u,i))}),e)};var E="Reduce of empty array with no initial value";j.reduce=j.foldl=j.inject=function(n,t,r,e){var u=arguments.length>2;if(null==n&&(n=[]),h&&n.reduce===h)return e&&(t=j.bind(t,e)),u?n.reduce(t,r):n.reduce(t);if(A(n,function(n,i,a){u?r=t.call(e,r,n,i,a):(r=n,u=!0)}),!u)throw new TypeError(E);return r},j.reduceRight=j.foldr=function(n,t,r,e){var u=arguments.length>2;if(null==n&&(n=[]),v&&n.reduceRight===v)return e&&(t=j.bind(t,e)),u?n.reduceRight(t,r):n.reduceRight(t);var i=n.length;if(i!==+i){var a=j.keys(n);i=a.length}if(A(n,function(o,c,l){c=a?a[--i]:--i,u?r=t.call(e,r,n[c],c,l):(r=n[c],u=!0)}),!u)throw new TypeError(E);return r},j.find=j.detect=function(n,t,r){var e;return O(n,function(n,u,i){return t.call(r,n,u,i)?(e=n,!0):void 0}),e},j.filter=j.select=function(n,t,r){var e=[];return null==n?e:g&&n.filter===g?n.filter(t,r):(A(n,function(n,u,i){t.call(r,n,u,i)&&e.push(n)}),e)},j.reject=function(n,t,r){return j.filter(n,function(n,e,u){return!t.call(r,n,e,u)},r)},j.every=j.all=function(n,t,e){t||(t=j.identity);var u=!0;return null==n?u:d&&n.every===d?n.every(t,e):(A(n,function(n,i,a){return(u=u&&t.call(e,n,i,a))?void 0:r}),!!u)};var O=j.some=j.any=function(n,t,e){t||(t=j.identity);var u=!1;return null==n?u:m&&n.some===m?n.some(t,e):(A(n,function(n,i,a){return u||(u=t.call(e,n,i,a))?r:void 0}),!!u)};j.contains=j.include=function(n,t){return null==n?!1:y&&n.indexOf===y?n.indexOf(t)!=-1:O(n,function(n){return n===t})},j.invoke=function(n,t){var r=o.call(arguments,2),e=j.isFunction(t);return j.map(n,function(n){return(e?t:n[t]).apply(n,r)})},j.pluck=function(n,t){return j.map(n,function(n){return n[t]})},j.where=function(n,t,r){return j.isEmpty(t)?r?void 0:[]:j[r?"find":"filter"](n,function(n){for(var r in t)if(t[r]!==n[r])return!1;return!0})},j.findWhere=function(n,t){return j.where(n,t,!0)},j.max=function(n,t,r){if(!t&&j.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.max.apply(Math,n);if(!t&&j.isEmpty(n))return-1/0;var e={computed:-1/0,value:-1/0};return A(n,function(n,u,i){var a=t?t.call(r,n,u,i):n;a>e.computed&&(e={value:n,computed:a})}),e.value},j.min=function(n,t,r){if(!t&&j.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.min.apply(Math,n);if(!t&&j.isEmpty(n))return 1/0;var e={computed:1/0,value:1/0};return A(n,function(n,u,i){var a=t?t.call(r,n,u,i):n;a<e.computed&&(e={value:n,computed:a})}),e.value},j.shuffle=function(n){var t,r=0,e=[];return A(n,function(n){t=j.random(r++),e[r-1]=e[t],e[t]=n}),e},j.sample=function(n,t,r){return arguments.length<2||r?n[j.random(n.length-1)]:j.shuffle(n).slice(0,Math.max(0,t))};var k=function(n){return j.isFunction(n)?n:function(t){return t[n]}};j.sortBy=function(n,t,r){var e=k(t);return j.pluck(j.map(n,function(n,t,u){return{value:n,index:t,criteria:e.call(r,n,t,u)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var F=function(n){return function(t,r,e){var u={},i=null==r?j.identity:k(r);return A(t,function(r,a){var o=i.call(e,r,a,t);n(u,o,r)}),u}};j.groupBy=F(function(n,t,r){(j.has(n,t)?n[t]:n[t]=[]).push(r)}),j.indexBy=F(function(n,t,r){n[t]=r}),j.countBy=F(function(n,t){j.has(n,t)?n[t]++:n[t]=1}),j.sortedIndex=function(n,t,r,e){r=null==r?j.identity:k(r);for(var u=r.call(e,t),i=0,a=n.length;a>i;){var o=i+a>>>1;r.call(e,n[o])<u?i=o+1:a=o}return i},j.toArray=function(n){return n?j.isArray(n)?o.call(n):n.length===+n.length?j.map(n,j.identity):j.values(n):[]},j.size=function(n){return null==n?0:n.length===+n.length?n.length:j.keys(n).length},j.first=j.head=j.take=function(n,t,r){return null==n?void 0:null==t||r?n[0]:o.call(n,0,t)},j.initial=function(n,t,r){return o.call(n,0,n.length-(null==t||r?1:t))},j.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:o.call(n,Math.max(n.length-t,0))},j.rest=j.tail=j.drop=function(n,t,r){return o.call(n,null==t||r?1:t)},j.compact=function(n){return j.filter(n,j.identity)};var M=function(n,t,r){return t&&j.every(n,j.isArray)?c.apply(r,n):(A(n,function(n){j.isArray(n)||j.isArguments(n)?t?a.apply(r,n):M(n,t,r):r.push(n)}),r)};j.flatten=function(n,t){return M(n,t,[])},j.without=function(n){return j.difference(n,o.call(arguments,1))},j.uniq=j.unique=function(n,t,r,e){j.isFunction(t)&&(e=r,r=t,t=!1);var u=r?j.map(n,r,e):n,i=[],a=[];return A(u,function(r,e){(t?e&&a[a.length-1]===r:j.contains(a,r))||(a.push(r),i.push(n[e]))}),i},j.union=function(){return j.uniq(j.flatten(arguments,!0))},j.intersection=function(n){var t=o.call(arguments,1);return j.filter(j.uniq(n),function(n){return j.every(t,function(t){return j.indexOf(t,n)>=0})})},j.difference=function(n){var t=c.apply(e,o.call(arguments,1));return j.filter(n,function(n){return!j.contains(t,n)})},j.zip=function(){for(var n=j.max(j.pluck(arguments,"length").concat(0)),t=new Array(n),r=0;n>r;r++)t[r]=j.pluck(arguments,""+r);return t},j.object=function(n,t){if(null==n)return{};for(var r={},e=0,u=n.length;u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},j.indexOf=function(n,t,r){if(null==n)return-1;var e=0,u=n.length;if(r){if("number"!=typeof r)return e=j.sortedIndex(n,t),n[e]===t?e:-1;e=0>r?Math.max(0,u+r):r}if(y&&n.indexOf===y)return n.indexOf(t,r);for(;u>e;e++)if(n[e]===t)return e;return-1},j.lastIndexOf=function(n,t,r){if(null==n)return-1;var e=null!=r;if(b&&n.lastIndexOf===b)return e?n.lastIndexOf(t,r):n.lastIndexOf(t);for(var u=e?r:n.length;u--;)if(n[u]===t)return u;return-1},j.range=function(n,t,r){arguments.length<=1&&(t=n||0,n=0),r=arguments[2]||1;for(var e=Math.max(Math.ceil((t-n)/r),0),u=0,i=new Array(e);e>u;)i[u++]=n,n+=r;return i};var R=function(){};j.bind=function(n,t){var r,e;if(_&&n.bind===_)return _.apply(n,o.call(arguments,1));if(!j.isFunction(n))throw new TypeError;return r=o.call(arguments,2),e=function(){if(!(this instanceof e))return n.apply(t,r.concat(o.call(arguments)));R.prototype=n.prototype;var u=new R;R.prototype=null;var i=n.apply(u,r.concat(o.call(arguments)));return Object(i)===i?i:u}},j.partial=function(n){var t=o.call(arguments,1);return function(){return n.apply(this,t.concat(o.call(arguments)))}},j.bindAll=function(n){var t=o.call(arguments,1);if(0===t.length)throw new Error("bindAll must be passed function names");return A(t,function(t){n[t]=j.bind(n[t],n)}),n},j.memoize=function(n,t){var r={};return t||(t=j.identity),function(){var e=t.apply(this,arguments);return j.has(r,e)?r[e]:r[e]=n.apply(this,arguments)}},j.delay=function(n,t){var r=o.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},j.defer=function(n){return j.delay.apply(j,[n,1].concat(o.call(arguments,1)))},j.throttle=function(n,t,r){var e,u,i,a=null,o=0;r||(r={});var c=function(){o=r.leading===!1?0:new Date,a=null,i=n.apply(e,u)};return function(){var l=new Date;o||r.leading!==!1||(o=l);var f=t-(l-o);return e=this,u=arguments,0>=f?(clearTimeout(a),a=null,o=l,i=n.apply(e,u)):a||r.trailing===!1||(a=setTimeout(c,f)),i}},j.debounce=function(n,t,r){var e,u,i,a,o;return function(){i=this,u=arguments,a=new Date;var c=function(){var l=new Date-a;t>l?e=setTimeout(c,t-l):(e=null,r||(o=n.apply(i,u)))},l=r&&!e;return e||(e=setTimeout(c,t)),l&&(o=n.apply(i,u)),o}},j.once=function(n){var t,r=!1;return function(){return r?t:(r=!0,t=n.apply(this,arguments),n=null,t)}},j.wrap=function(n,t){return function(){var r=[n];return a.apply(r,arguments),t.apply(this,r)}},j.compose=function(){var n=arguments;return function(){for(var t=arguments,r=n.length-1;r>=0;r--)t=[n[r].apply(this,t)];return t[0]}},j.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},j.keys=w||function(n){if(n!==Object(n))throw new TypeError("Invalid object");var t=[];for(var r in n)j.has(n,r)&&t.push(r);return t},j.values=function(n){for(var t=j.keys(n),r=t.length,e=new Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},j.pairs=function(n){for(var t=j.keys(n),r=t.length,e=new Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},j.invert=function(n){for(var t={},r=j.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},j.functions=j.methods=function(n){var t=[];for(var r in n)j.isFunction(n[r])&&t.push(r);return t.sort()},j.extend=function(n){return A(o.call(arguments,1),function(t){if(t)for(var r in t)n[r]=t[r]}),n},j.pick=function(n){var t={},r=c.apply(e,o.call(arguments,1));return A(r,function(r){r in n&&(t[r]=n[r])}),t},j.omit=function(n){var t={},r=c.apply(e,o.call(arguments,1));for(var u in n)j.contains(r,u)||(t[u]=n[u]);return t},j.defaults=function(n){return A(o.call(arguments,1),function(t){if(t)for(var r in t)n[r]===void 0&&(n[r]=t[r])}),n},j.clone=function(n){return j.isObject(n)?j.isArray(n)?n.slice():j.extend({},n):n},j.tap=function(n,t){return t(n),n};var S=function(n,t,r,e){if(n===t)return 0!==n||1/n==1/t;if(null==n||null==t)return n===t;n instanceof j&&(n=n._wrapped),t instanceof j&&(t=t._wrapped);var u=l.call(n);if(u!=l.call(t))return!1;switch(u){case"[object String]":return n==String(t);case"[object Number]":return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case"[object Date]":case"[object Boolean]":return+n==+t;case"[object RegExp]":return n.source==t.source&&n.global==t.global&&n.multiline==t.multiline&&n.ignoreCase==t.ignoreCase}if("object"!=typeof n||"object"!=typeof t)return!1;for(var i=r.length;i--;)if(r[i]==n)return e[i]==t;var a=n.constructor,o=t.constructor;if(a!==o&&!(j.isFunction(a)&&a instanceof a&&j.isFunction(o)&&o instanceof o))return!1;r.push(n),e.push(t);var c=0,f=!0;if("[object Array]"==u){if(c=n.length,f=c==t.length)for(;c--&&(f=S(n[c],t[c],r,e)););}else{for(var s in n)if(j.has(n,s)&&(c++,!(f=j.has(t,s)&&S(n[s],t[s],r,e))))break;if(f){for(s in t)if(j.has(t,s)&&!c--)break;f=!c}}return r.pop(),e.pop(),f};j.isEqual=function(n,t){return S(n,t,[],[])},j.isEmpty=function(n){if(null==n)return!0;if(j.isArray(n)||j.isString(n))return 0===n.length;for(var t in n)if(j.has(n,t))return!1;return!0},j.isElement=function(n){return!(!n||1!==n.nodeType)},j.isArray=x||function(n){return"[object Array]"==l.call(n)},j.isObject=function(n){return n===Object(n)},A(["Arguments","Function","String","Number","Date","RegExp"],function(n){j["is"+n]=function(t){return l.call(t)=="[object "+n+"]"}}),j.isArguments(arguments)||(j.isArguments=function(n){return!(!n||!j.has(n,"callee"))}),"function"!=typeof/./&&(j.isFunction=function(n){return"function"==typeof n}),j.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},j.isNaN=function(n){return j.isNumber(n)&&n!=+n},j.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"==l.call(n)},j.isNull=function(n){return null===n},j.isUndefined=function(n){return n===void 0},j.has=function(n,t){return f.call(n,t)},j.noConflict=function(){return n._=t,this},j.identity=function(n){return n},j.times=function(n,t,r){for(var e=Array(Math.max(0,n)),u=0;n>u;u++)e[u]=t.call(r,u);return e},j.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))};var I={escape:{"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;"}};I.unescape=j.invert(I.escape);var T={escape:new RegExp("["+j.keys(I.escape).join("")+"]","g"),unescape:new RegExp("("+j.keys(I.unescape).join("|")+")","g")};j.each(["escape","unescape"],function(n){j[n]=function(t){return null==t?"":(""+t).replace(T[n],function(t){return I[n][t]})}}),j.result=function(n,t){if(null==n)return void 0;var r=n[t];return j.isFunction(r)?r.call(n):r},j.mixin=function(n){A(j.functions(n),function(t){var r=j[t]=n[t];j.prototype[t]=function(){var n=[this._wrapped];return a.apply(n,arguments),z.call(this,r.apply(j,n))}})};var N=0;j.uniqueId=function(n){var t=++N+"";return n?n+t:t},j.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var q=/(.)^/,B={"'":"'","\\":"\\","\r":"r","\n":"n"," ":"t","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\t|\u2028|\u2029/g;j.template=function(n,t,r){var e;r=j.defaults({},r,j.templateSettings);var u=new RegExp([(r.escape||q).source,(r.interpolate||q).source,(r.evaluate||q).source].join("|")+"|$","g"),i=0,a="__p+='";n.replace(u,function(t,r,e,u,o){return a+=n.slice(i,o).replace(D,function(n){return"\\"+B[n]}),r&&(a+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'"),e&&(a+="'+\n((__t=("+e+"))==null?'':__t)+\n'"),u&&(a+="';\n"+u+"\n__p+='"),i=o+t.length,t}),a+="';\n",r.variable||(a="with(obj||{}){\n"+a+"}\n"),a="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+a+"return __p;\n";try{e=new Function(r.variable||"obj","_",a)}catch(o){throw o.source=a,o}if(t)return e(t,j);var c=function(n){return e.call(this,n,j)};return c.source="function("+(r.variable||"obj")+"){\n"+a+"}",c},j.chain=function(n){return j(n).chain()};var z=function(n){return this._chain?j(n).chain():n};j.mixin(j),A(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=e[n];j.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!=n&&"splice"!=n||0!==r.length||delete r[0],z.call(this,r)}}),A(["concat","join","slice"],function(n){var t=e[n];j.prototype[n]=function(){return z.call(this,t.apply(this._wrapped,arguments))}}),j.extend(j.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}).call(this);
6//# sourceMappingURL=underscore-min.map
  
1(function(swtr) {
2
3 //TODO: find a better way to init.
4 //Find a better way to do closure
5 //Remove script code from the HTML page
6 swtr.init = function() {
7 swtr.sweets = new ImgAnnoSwts();
8 swtr.appView = new AppView();
9 swtr.who = 'Guest';
10 };
11
12 /* Model for Image Annotation Sweets */
13 var ImgAnnoSwt = Backbone.Model.extend({
14 defaults: {
15 'who': '',
16 'what': 'img-anno',
17 'where': '',
18 'how': {}
19 },
20 initialize: function() {
21 if(!_.has(this, 'id')) {
22 // bad hack to have dates.. FIXIT
23 this.set('created', new Date().toUTCString().substr(0, 25));
24 }
25 }
26 });
27
28 /* Collection to hold all multiple ImgAnnoSwt */
29 var ImgAnnoSwts = Backbone.Collection.extend({
30 model: ImgAnnoSwt,
31 url: function() {
32 return swtr.swtstoreURL() + '/sweets';
33 },
34 // get all sweets/annotations of type #img-anno for a particular URI
35 // (where)
36 // @options is a javascript object,
37 // @options.where : URI of the resource for which swts to be fetched
38 // @options.who: optional username to filter sweets
39 // @options.success: success callback to call
40 // @options.error: error callback to call
41 getAll: function(options) {
42 // error checking
43 if(!options.where) {
44 throw Error('"where" option must be passed to get sweets of a URI');
45 return false;
46 }
47 // setting up params
48 var where = options.where,
49 who = options.who || null;
50 url = swtr.swtstoreURL() + swtr.endpoints.get + '?where=' + where;
51 if(who) {
52 url += '&who=' + who;
53 }
54 // get them!
55 this.sync('read', this, {
56 url: url,
57 success: function() {
58 if(typeof options.success === 'function') {
59 options.success.apply(this, arguments);
60 }
61 },
62 error: function() {
63 if(typeof options.error === 'function') {
64 options.error.apply(this, arguments);
65 }
66 }
67 });
68 },
69 // post newly created sweets to a sweet store
70 // @options is a javascript object,
71 // @options.where : URI of the resource for which swts to be fetched
72 // @options.who: optional username to filter sweets
73 // @options.success: success callback to call
74 // @options.error: error callback to call,
75 post: function(options) {
76 var new_sweets = this.getNew();
77 var dummy_collection = new Backbone.Collection(new_sweets);
78
79 this.sync('create', dummy_collection, {
80 url: swtr.swtstoreURL() + swtr.endpoints.post,
81 success: function() {
82 if(typeof options.success === 'function') {
83 options.success.apply(this, arguments);
84 }
85 },
86 error: function() {
87 if(typeof options.error === 'function') {
88 options.error.apply(this, arguments);
89 }
90 }
91 });
92 },
93 // return newly created models from the collection
94 getNew: function() {
95 var new_models = [];
96 this.each(function(model) {
97 if(model.isNew()) {
98 new_models.push(model);
99 }
100 });
101 return new_models;
102 },
103 // update part of the collection after a save on the server
104 update: function() {
105 }
106 });
107
108 var SweetsView = Backbone.View.extend({
109 el: $('#sweet-list-wrapper'),
110 events: {
111 'click #sweet-cancel': 'cancelSweeting',
112 'click #post-sweet': 'postSweets'
113 },
114 initialize: function() {
115 this.template = _.template($('#sweet-template').html());
116 },
117 render: function() {
118 $('#sweet-list').html('<h4>These are your sweet annotations!</h4>');
119 _.each(this.collection.models, function(swt) {
120 if(swt.has('id')) {
121 return false;
122 }
123 $('#sweet-list').append(this.template({
124 who: swt.get('who'),
125 what: swt.get('what'),
126 where: swt.get('where'),
127 how: JSON.stringify(swt.get('how').text)
128 }));
129 }, this);
130 $(this.el).fadeIn(300);
131 },
132 cancelSweeting: function() {
133 this.removeSwtsNotPosted();
134 this.cleanUp();
135 },
136 removeSwtsNotPosted: function() {
137 var notPosted = this.collection.filter(function(model) {
138 return !model.has('id');
139 });
140 this.collection.remove(notPosted);
141 },
142 postSweets: function() {
143 swtr.appView.helpview.step(5);
144 swtr.appView.$overlay.show();
145 this.collection.post({
146 success: function(collection, response) {
147 //console.log(collection, response);
148 swtr.sweets.update(collection);
149 //TODO: move this to a annotation view or something
150 anno.removeAll();
151 _.each(swtr.sweets.models, function(swt) {
152 swt.get('how')['editable'] = false;
153 anno.addAnnotation(swt.get('how'));
154 });
155 //console.log(swtr.sweets.toJSON());
156 swtr.appView.$overlay.hide();
157 swtr.appView.helpview.step(6);
158 },
159 error: function(jqxhr, error) {
160 console.log(jqxhr, error);
161 }
162 });
163 this.cleanUp();
164 },
165 cleanUp: function() {
166 console.log('cleaning up');
167 $(this.el).hide();
168 }
169 });
170
171 var AppView = Backbone.View.extend({
172 el: $('#swt-maker'),
173 events: {
174 'click #img-url-submit': 'setImage',
175 'click #sweet': 'sweet'
176 },
177 initialize: function() {
178 //var allElements = $('body *');
179 this.helpview = new HelpView();
180 this.sweetsview = new SweetsView({collection: swtr.sweets});
181 anno.addHandler('onAnnotationCreated', this.showSwtHelp);
182 anno.addHandler('onAnnotationUpdated', this.showSwtHelp);
183 this.$overlay = $('#app-overlay');
184 this.$img = $('#annotatable-img');
185 this.imgURL = this.$img.attr('src');
186 if(this.imgURL) {
187 this.initImageAnno();
188 $('#img-url-input').val(this.imgURL);
189 }
190 else {
191 this.helpview.step(1);
192 }
193 },
194 setImage: function() {
195 anno.reset();
196 this.imgURL = $('#img-url-input').val();
197 this.$overlay.show();
198 this.helpview.step(7);
199 this.$img.attr('onload', function() {
200 swtr.appView.$overlay.hide();
201 });
202 this.$img.attr('src', this.imgURL);
203 this.initImageAnno();
204 return false;
205 },
206 initImageAnno: function() {
207 // img is a jquery object which annotorious doesn't accept; instead it
208 // takes the native object returned by a browser API; fortunately, jqeury
209 // stores a copy of the native object too!
210 anno.makeAnnotatable(this.$img[0]);
211 this.getExistingAnnotations();
212 },
213 getExistingAnnotations: function() {
214 this.helpview.step(0);
215 this.$overlay.show();
216 console.log('getting existing annotations of ', this.imgURL);
217 swtr.sweets.getAll({
218 where: this.imgURL,
219 success: function(data) {
220 if(_.isArray(data)) {
221 swtr.sweets.add(data);
222 _.each(data, function(swt) {
223 swt.how['editable'] = false;
224 swt.how.text+= '\n - by ' + swt.who;
225 anno.addAnnotation(swt.how);
226 });
227 swtr.appView.$overlay.hide();
228 swtr.appView.helpview.step(2);
229 }
230 },
231 error: function(jqxhr, error, statusText) {
232 if(jqxhr.status === 404) { //annotations don't exist for this image
233 console.log('annotations don\'t exist for this image. Create one!');
234 }
235 }
236 });
237 },
238 showSwtHelp: function(annotation) {
239 var self = swtr.appView;//TODO: figure out how we can bind the scope when this func is called as a callback
240 self.helpview.step(3);
241 $('#sweet').show();
242 },
243 getSweets: function() {
244 var annos = _.filter(anno.getAnnotations(), function(anno) {
245 return (!_.has(anno, 'editable') || anno.editable === true);
246 });
247 _.each(annos, function(anno) {
248 swtr.sweets.add({
249 who: swtr.who,
250 where: anno.src,
251 how: anno
252 });
253 });
254 },
255 showSweets: function() {
256 this.sweetsview.render();
257 },
258 sweet: function() {
259 this.getSweets();
260 this.showSweets();
261 return false;
262 }
263 });
264
265 var HelpView = Backbone.View.extend({
266 el: $('#helpview'),
267 events: {
268 },
269 initialize: function() {
270 },
271 //TODO: move from number based steps to something else. number based steps
272 //implicitly imply sequential processing..which does not happen in this
273 //case..
274 //following helps can be async..
275 step: function(n) {
276 var text = '';
277 switch (n) {
278 case 0 : text = 'Getting annotations..';
279 break;
280 case 1: text = 'Enter the URL of an image below, and start annotating!';
281 break;
282 case 2: text = 'Annotate the image, or see other annotations';
283 break;
284 case 3: text = 'Now you can sweet this annotation.';
285 break;
286 case 4: text = 'Click button to sweet these sweet annotations';
287 break;
288 case 5: text = 'Publishing your sweets';
289 break;
290 case 6: text = 'Sweets successfully posted';
291 break;
292 case 7: text = 'Fetching your image..';
293 break;
294 }
295 $(this.el).html(text);
296 }
297 });
298
299 // utilities and helper functions to go here
300 swtr.utils = {};
301
302 swtr.AppView = AppView;
303})(swtr);
  
1<!doctype html>
2<html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
6 <title>Sweet Maker</title>
7
8 <meta name="description" content="Sweet Maker, Social, Semantic, Web, Decentralized, Makes Sweet">
9 <link href="{{ url_for('static', filename='css/bootstrap.min.css') }}" rel="stylesheet">
10 <link href="{{ url_for('static', filename='css/bootstrap-theme.min.css') }}" rel="stylesheet">
11 <link href="{{ url_for('static', filename='css/swtmaker.css') }}" rel="stylesheet">
12 <link href="{{ url_for('static', filename='css/annotorious.css') }}" rel="stylesheet">
13 <link href="{{ url_for('static', filename='css/swtmaker.css') }}" rel="stylesheet">
14 </head>
15 <body>
16
17 <div id="swt-maker" class="container">
18 <div id="helpview" class="alert alert-info"></div>
19 <div id="img-input">
20 <div class="form-group">
21 <input type="text" placeholder="Enter URL of the image"
22 id="img-url-input" class="form-control">
23 </div>
24 <button class="btn btn-default" id="img-url-submit">GO</button>
25 <button class="btn btn-default" id="sweet">Sweet</button>
26 </div>
27 <div id="img-annotation-wrapper" class="col-md-12 col-xs-12 col-lg-12 col-sm-12 well">
28 {% if url %}
29 <img src="{{ url }}" id="annotatable-img">
30 {% else %}
31 <img src="" id="annotatable-img">
32 {% endif %}
33 </div>
34 <div id="sweet-list-wrapper">
35 <ul id="sweet-list"></ul>
36 <div class="btn-grp">
37 <button class="btn btn-default" id="sweet-cancel">Cancel</button>
38 <button class="btn btn-primary" id="post-sweet">Sweet</button>
39 </div>
40 </div>
41 </div>
42 <div id="app-overlay"></div>
43
44 <script>
45 window.swtr = window.swtr || {};
46 swtr.swtstoreURL = function() { return '{{ conf.swtstoreURL }}'; }
47 swtr.endpoints = {'get': '/sweets/q', 'post': '/sweets'};
48 window.onload = function() {
49 swtr.init();
50 };
51 </script>
52 <script src="{{ url_for('static', filename='js/lib/jquery-1.10.2.min.js') }}"></script>
53 <script src="{{ url_for('static', filename='js/lib/bootstrap.min.js') }}"></script>
54 <script src="{{ url_for('static', filename='js/lib/underscore-1.5.2.min.js') }}"></script>
55 <script src="{{ url_for('static', filename='js/lib/backbone-1.0.0.min.js') }}"></script>
56 <script src="{{ url_for('static', filename='js/lib/annotorious.debug.js') }}"></script>
57 <script src="{{ url_for('static', filename='js/swtmaker.js') }}"></script>
58
59 <script type="text/template" id="sweet-template">
60 <li class="sweet">
61 <a href="#">@<%= who %></a> <strong>#<%= what %></strong>
62 /<a href="<%= where %>"><%= where.substr(0, 30) + '...' %></a>
63 <%= how %>
64 </li>
65 </script>
66 </body>
67</html>