##// END OF EJS Templates
- Estandarizando codigo del proyecto....
jsalyrosas -
r210:211
parent child
Show More
This diff has been collapsed as it changes many lines, (746 lines changed) Show them Hide them
@@ -0,0 +1,746
1 /*
No newline at end of file
2 * font-family: 'Droid Sans', sans-serif;
No newline at end of file
3 * font-family: 'Ubuntu', sans-serif;
No newline at end of file
4 * font-family: 'Open Sans', sans-serif;
No newline at end of file
5 * font-family: 'Open Sans Condensed', sans-serif;
No newline at end of file
6 * font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
7 */
No newline at end of file
8
No newline at end of file
9 body {
No newline at end of file
10 padding: 0;
No newline at end of file
11 margin: 0;
No newline at end of file
12 font-size: 12px; }
No newline at end of file
13
No newline at end of file
14 header {
No newline at end of file
15 width: 980px;
No newline at end of file
16 height: 50px;
No newline at end of file
17 text-align: center;
No newline at end of file
18 line-height: 50px;
No newline at end of file
19 border: 0px solid #fcc !important; }
No newline at end of file
20
No newline at end of file
21 #schema {
No newline at end of file
22 margin: 0 auto;
No newline at end of file
23 width: 980px;
No newline at end of file
24 padding: 10px 10px;
No newline at end of file
25 border: 0px solid #f00 !important; }
No newline at end of file
26
No newline at end of file
27 #content {
No newline at end of file
28 margin: 2px 0px 0px 0px;
No newline at end of file
29 border: 0px solid #1cc !important; }
No newline at end of file
30
No newline at end of file
31 #topcolumn {
No newline at end of file
32 float: left;
No newline at end of file
33 width: 980px;
No newline at end of file
34 height: 40px;
No newline at end of file
35 line-height: 35px;
No newline at end of file
36 margin: 2px 0px;
No newline at end of file
37 border: 1px solid #ddd !important;
No newline at end of file
38 box-shadow: 2px 2px 5px #888; }
No newline at end of file
39
No newline at end of file
40 #activeProfileBar {
No newline at end of file
41 float: left;
No newline at end of file
42 width: 980px;
No newline at end of file
43 margin: 0px 0px;
No newline at end of file
44 height: 25px;
No newline at end of file
45 border: 1px solid #ddd !important;
No newline at end of file
46 box-shadow: 1px 1px 5px #ccc; }
No newline at end of file
47
No newline at end of file
48 #maincolumn {
No newline at end of file
49 float: left;
No newline at end of file
50 width: 980px;
No newline at end of file
51 margin: 2px 0px 0px 0px;
No newline at end of file
52 padding: 2px 0px 6px 0px;
No newline at end of file
53 border: 1px solid #ddd !important;
No newline at end of file
54 box-shadow: 2px 2px 5px #666; }
No newline at end of file
55
No newline at end of file
56 footer {
No newline at end of file
57 height: 30px;
No newline at end of file
58 line-height: 30px;
No newline at end of file
59 text-align: center;
No newline at end of file
60 margin: 0px 0px;
No newline at end of file
61 border: 0px solid #200 !important;
No newline at end of file
62 box-shadow: 2px 2px 5px #888; }
No newline at end of file
63
No newline at end of file
64 .cleardivs {
No newline at end of file
65 clear: both;
No newline at end of file
66 border: 0px solid #400;
No newline at end of file
67 height: 0px; }
No newline at end of file
68
No newline at end of file
69 textarea {
No newline at end of file
70 resize: none;
No newline at end of file
71 overflow: hidden; }
No newline at end of file
72
No newline at end of file
73 /****************************************************************************************/
No newline at end of file
74 /****** ESTILOS GENERALES *****************/
No newline at end of file
75 /****************************************************************************************/
No newline at end of file
76 a {
No newline at end of file
77 font-family: 'Droid Sans', sans-serif;
No newline at end of file
78 text-decoration: none;
No newline at end of file
79 color: #1494F6; }
No newline at end of file
80
No newline at end of file
81 .mnu {
No newline at end of file
82 height: 22px;
No newline at end of file
83 border: 0px solid #c55 !important; }
No newline at end of file
84
No newline at end of file
85 .mnu li {
No newline at end of file
86 display:inline; }
No newline at end of file
87
No newline at end of file
88 .MnuVertical, .MnuHorizontal {
No newline at end of file
89 font-family: 'Droid Sans', sans-serif;
No newline at end of file
90 font-size: inherit;
No newline at end of file
91 font-style: normal;
No newline at end of file
92 text-shadow: 2px 2px #eee; }
No newline at end of file
93
No newline at end of file
94 .MnuHorizontal ul {
No newline at end of file
95 list-style: none;
No newline at end of file
96 list-style-type: none;
No newline at end of file
97 margin: 0; }
No newline at end of file
98
No newline at end of file
99 /*.MnuHorizontal{
No newline at end of file
100 display: -webkit-box;
No newline at end of file
101 -webkit-box-orient:horizontal; }
No newline at end of file
102
No newline at end of file
103 .MnuHorizontal a{
No newline at end of file
104 display:block;
No newline at end of file
105 padding:10px;
No newline at end of file
106 -webkit-box-flex:1;
No newline at end of file
107 text-align:center; }*/
No newline at end of file
108
No newline at end of file
109 .link-disabled {
No newline at end of file
110 color: #666;
No newline at end of file
111 text-decoration: None;
No newline at end of file
112 cursor: default; }
No newline at end of file
113
No newline at end of file
114 /****************************************************************************************/
No newline at end of file
115 /****** MENU DE NAVEGACION DE PERFILES *************/
No newline at end of file
116 /****************************************************************************************/
No newline at end of file
117 #infoProfiles {
No newline at end of file
118 float: left;
No newline at end of file
119 width: 300px;
No newline at end of file
120 margin: 0px;
No newline at end of file
121 padding: 2px 0px;
No newline at end of file
122 border: 0px solid #1cc !important; }
No newline at end of file
123
No newline at end of file
124 #infoProfiles label {
No newline at end of file
125 padding: 10px 10px 10px 12px;
No newline at end of file
126 margin: 10px 0;
No newline at end of file
127 font-family: 'Droid Sans', sans-serif;
No newline at end of file
128 /*font-family: 'Roboto Condensed', sans-serif;*/
No newline at end of file
129 /*letter-spacing: 0.046em;*/ }
No newline at end of file
130
No newline at end of file
131 #infoProfiles select {
No newline at end of file
132 padding: 4px 0px; margin: 0;
No newline at end of file
133 font-family: 'Droid Sans', sans-serif;
No newline at end of file
134 font-size: 12px;
No newline at end of file
135 letter-spacing: 0.006em;
No newline at end of file
136 width: 200px; }
No newline at end of file
137
No newline at end of file
138 #mnuProfiles {
No newline at end of file
139 margin: 0;
No newline at end of file
140 float: right;
No newline at end of file
141 padding: 2px 10px;
No newline at end of file
142 border: 0px solid #1494F6 !important; }
No newline at end of file
143
No newline at end of file
144 #mnuProfiles ul {
No newline at end of file
145 list-style: none;
No newline at end of file
146 list-style-type: none;
No newline at end of file
147 margin: 0;
No newline at end of file
148 padding-left: 20px;
No newline at end of file
149 border: 0px solid #f00 !important; }
No newline at end of file
150
No newline at end of file
151 #mnuProfiles li {
No newline at end of file
152 width: 80px;
No newline at end of file
153 float: left;
No newline at end of file
154 padding: 2px;
No newline at end of file
155 border: 0px solid #c55 !important; }
No newline at end of file
156
No newline at end of file
157 #mnuProfiles a {
No newline at end of file
158 font-weight: normal;
No newline at end of file
159 color: #1494F6;
No newline at end of file
160 display: block;
No newline at end of file
161 text-align: center;
No newline at end of file
162 border-bottom: 1px solid #1494F6 !important;
No newline at end of file
163 text-decoration: none;
No newline at end of file
164 padding: 0px 4px;
No newline at end of file
165 line-height: 18px;
No newline at end of file
166 margin: 6px; }
No newline at end of file
167
No newline at end of file
168 /****************************************************************************************/
No newline at end of file
169 /****** BARRA DE PERFILES ACTIVOS *************/
No newline at end of file
170 /****************************************************************************************/
No newline at end of file
171
No newline at end of file
172 #activeProfileBar label, a{
No newline at end of file
173 line-height: 20px;
No newline at end of file
174 float: left;
No newline at end of file
175 letter-spacing: 0.01em;
No newline at end of file
176 padding: 3px 12px;
No newline at end of file
177 border: 0px solid #f00 !important; }
No newline at end of file
178
No newline at end of file
179 .titleBar {
No newline at end of file
180 color: #333;
No newline at end of file
181 margin-left: 2px;
No newline at end of file
182 text-align: right; }
No newline at end of file
183
No newline at end of file
184 .ActiveProfile, .ActivePattern, .lnkActiveProfile {
No newline at end of file
185 color: #001bf4;
No newline at end of file
186 margin: 0px 2px;
No newline at end of file
187 text-align: left;
No newline at end of file
188 text-decoration: None; }
No newline at end of file
189
No newline at end of file
190 .navbarsep{
No newline at end of file
191 float: left; }
No newline at end of file
192
No newline at end of file
193 /****************************************************************************************/
No newline at end of file
194 /******** FORMULARIO DE PERFILES *************************************/
No newline at end of file
195 /****************************************************************************************/
No newline at end of file
196 #divProfile {
No newline at end of file
197 margin: 10px 0px;
No newline at end of file
198 padding: 10px 10px;
No newline at end of file
199 width: 500px;
No newline at end of file
200 border: 0px solid #dff !important; }
No newline at end of file
201
No newline at end of file
202 #divProfile label,input[type=text],input[type=file] {
No newline at end of file
203 font-family: 'Open Sans', sans-serif;
No newline at end of file
204 font-size: inherit; }
No newline at end of file
205
No newline at end of file
206 #divProfile label {
No newline at end of file
207 float: left;
No newline at end of file
208 text-align: right;
No newline at end of file
209 width: 120px;
No newline at end of file
210 padding: 3px 10px 3px 10px;
No newline at end of file
211 line-height: 20px;
No newline at end of file
212 border: 0px solid #d85 !important;
No newline at end of file
213 }
No newline at end of file
214
No newline at end of file
215 #divProfile input[type=text] {
No newline at end of file
216 letter-spacing: 0.08em;
No newline at end of file
217 padding: 2px 10px 2px 10px;
No newline at end of file
218 width: 200px;
No newline at end of file
219 }
No newline at end of file
220
No newline at end of file
221 #divProfile input[type=text]:FOCUS {
No newline at end of file
222 border: 1px solid #faa !important;
No newline at end of file
223 border-radius: 0.26em;
No newline at end of file
224 box-shadow: 2px 2px 5px #fbb;
No newline at end of file
225 }
No newline at end of file
226
No newline at end of file
227 .lblProfile {
No newline at end of file
228 width: 200px; }
No newline at end of file
229
No newline at end of file
230 #divPattern textarea,input[type=text],label,input[type=file],input[type=button],input[type=submit] {
No newline at end of file
231 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
232 font-size: inherit; }
No newline at end of file
233
No newline at end of file
234 .antenna, .NewAntenna {
No newline at end of file
235 box-shadow: 1px 1px 2px #666;
No newline at end of file
236 padding: 5px;
No newline at end of file
237 margin: 10px auto;
No newline at end of file
238 display: block;
No newline at end of file
239 border: 0px solid #fee !important; }
No newline at end of file
240
No newline at end of file
241 .antenna {
No newline at end of file
242 width: 520px; }
No newline at end of file
243
No newline at end of file
244 .NewAntenna {
No newline at end of file
245 width: 750px;
No newline at end of file
246 border: 0px solid #f00 !important; }
No newline at end of file
247
No newline at end of file
248 .flsAntenna, .NewFlsAntenna {
No newline at end of file
249 margin: 0;
No newline at end of file
250 padding: 0px;
No newline at end of file
251 border: 1px solid #fee !important; }
No newline at end of file
252
No newline at end of file
253 .flsAntenna {
No newline at end of file
254 width: 510px; }
No newline at end of file
255
No newline at end of file
256 .NewFlsAntenna {
No newline at end of file
257 width: 100%; }
No newline at end of file
258
No newline at end of file
259 .legendAntenna {
No newline at end of file
260 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
261 font-size: inherit;
No newline at end of file
262 text-align: left;
No newline at end of file
263 margin-left: 10px; }
No newline at end of file
264
No newline at end of file
265 .infoAntenna {
No newline at end of file
266 width: 500px;
No newline at end of file
267 float: left;
No newline at end of file
268 border: 0px solid #f00 !important; }
No newline at end of file
269
No newline at end of file
270 .overJRO {
No newline at end of file
271 width: 250px;
No newline at end of file
272 float: left;
No newline at end of file
273 margin: 0px 5px;
No newline at end of file
274 border: 0px solid #1cc !important; }
No newline at end of file
275
No newline at end of file
276 .divAntenna, .NewDivAntenna, .NewDivTx {
No newline at end of file
277 float: left;
No newline at end of file
278 margin: 10px;
No newline at end of file
279 border: 0px solid #fcc !important; }
No newline at end of file
280
No newline at end of file
281 .divAntenna {
No newline at end of file
282 width: 220px;
No newline at end of file
283 border: 0px solid #fcc !important; }
No newline at end of file
284
No newline at end of file
285 .NewDivAntenna {
No newline at end of file
286 border: 0px solid #fcc !important; }
No newline at end of file
287
No newline at end of file
288 .NewDivTx {
No newline at end of file
289 border: 0px solid #fcc !important; }
No newline at end of file
290
No newline at end of file
291 .titleField {
No newline at end of file
292 display: block;
No newline at end of file
293 text-align: center;
No newline at end of file
294 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
295 letter-spacing: 0.086em; }
No newline at end of file
296
No newline at end of file
297 .txtAntenna, .view-textAntenna {
No newline at end of file
298 width: 175px;
No newline at end of file
299 max-width: 180px;
No newline at end of file
300 height: 160px;
No newline at end of file
301 max-height: 165px;
No newline at end of file
302 background: #fdfdfb;
No newline at end of file
303 border: 2px solid #eee !important;
No newline at end of file
304 text-align: justify;
No newline at end of file
305 margin: 0 auto;
No newline at end of file
306 line-height: 20px; }
No newline at end of file
307
No newline at end of file
308 .txtAntenna {
No newline at end of file
309 padding: 4px;
No newline at end of file
310 }
No newline at end of file
311
No newline at end of file
312 .view-textAntenna {
No newline at end of file
313 padding: 2px;
No newline at end of file
314 font-family: "Ubuntu";
No newline at end of file
315 font-size: inherit; }
No newline at end of file
316
No newline at end of file
317 .boxAntenna, .boxTR {
No newline at end of file
318 border: 2px solid #eee !important;
No newline at end of file
319 text-align: center;
No newline at end of file
320 display: block;
No newline at end of file
321 float: left;
No newline at end of file
322 margin: 0;
No newline at end of file
323 padding: 0; }
No newline at end of file
324
No newline at end of file
325 .boxAntenna {
No newline at end of file
326 padding: 3px; }
No newline at end of file
327
No newline at end of file
328 .boxTR {
No newline at end of file
329 padding: 3px; }
No newline at end of file
330
No newline at end of file
331 .fullLine{
No newline at end of file
332 font-size: 0.95em; }
No newline at end of file
333
No newline at end of file
334 .lineInputs, .lineInputsTx {
No newline at end of file
335 text-align: left;
No newline at end of file
336 line-height: 1.4em;
No newline at end of file
337 padding: 0;
No newline at end of file
338 margin: 0px;
No newline at end of file
339 display: block;
No newline at end of file
340 float: left;
No newline at end of file
341 border: 0px solid #1cc !important; }
No newline at end of file
342
No newline at end of file
343 .lineInputs {
No newline at end of file
344 /*width: 240px;*/
No newline at end of file
345 border: 0px solid #1cc !important; }
No newline at end of file
346
No newline at end of file
347 .lineInputsTx {
No newline at end of file
348 /*width: 185px;*/
No newline at end of file
349 border: 0px solid #1cc !important; }
No newline at end of file
350
No newline at end of file
351 .divValuesAntenna, .divValuesTx {
No newline at end of file
352 float: left;
No newline at end of file
353 display: block;
No newline at end of file
354 margin: 0 auto;
No newline at end of file
355 border: 0px solid #bbb !important; }
No newline at end of file
356
No newline at end of file
357 .divValuesAntenna {
No newline at end of file
358 /*width: 230px;*/
No newline at end of file
359 border: 0px solid #2eb !important; }
No newline at end of file
360
No newline at end of file
361 .divValuesTx {
No newline at end of file
362 /*width: 175px;*/
No newline at end of file
363 border: 0px solid #bbb !important; }
No newline at end of file
364
No newline at end of file
365 .divValuesAntenna input[type=text], .divValuesTx input[type=text] {
No newline at end of file
366 border: 0px;
No newline at end of file
367 border-bottom: 1px solid #666 !important;
No newline at end of file
368 line-height: 1.1em;
No newline at end of file
369 font-family: 'Roboto Condensed', sans-serif; }
No newline at end of file
370
No newline at end of file
371 .divValuesAntenna input[type=text] {
No newline at end of file
372 width: 18px; }
No newline at end of file
373
No newline at end of file
374 .divValuesTx input[type=text]{
No newline at end of file
375 width: 11px; }
No newline at end of file
376
No newline at end of file
377 .lblSign, .lblSignTx {
No newline at end of file
378 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
379 color: #666;
No newline at end of file
380 float: left;
No newline at end of file
381 margin: 0px;
No newline at end of file
382 border: 0px solid #bbb !important; }
No newline at end of file
383
No newline at end of file
384 .lblSignLeft {
No newline at end of file
385 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
386 color: #666;
No newline at end of file
387 float: left;
No newline at end of file
388 margin: 0px 2px 0px 0px;
No newline at end of file
389 padding: 0;
No newline at end of file
390 border: 0px solid #f00 !important; }
No newline at end of file
391
No newline at end of file
392 .lblSignRight {
No newline at end of file
393 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
394 color: #666;
No newline at end of file
395 float: left;
No newline at end of file
396 margin: 0;
No newline at end of file
397 padding: 0;
No newline at end of file
398 border: 0px solid #f00 !important; }
No newline at end of file
399
No newline at end of file
400 .lblNewSignLeft, .lblNewSignRight {
No newline at end of file
401 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
402 color: #666;
No newline at end of file
403 float: left;
No newline at end of file
404 padding: 0; }
No newline at end of file
405
No newline at end of file
406 .lblNewSignLeft {
No newline at end of file
407 margin: 0px 2px 0px 0px;
No newline at end of file
408 border: 0px solid #f00 !important; }
No newline at end of file
409
No newline at end of file
410 .lblNewSignRight {
No newline at end of file
411 margin: 0;
No newline at end of file
412 border: 0px solid #f00 !important; }
No newline at end of file
413
No newline at end of file
414 .divTx {
No newline at end of file
415 display: block;
No newline at end of file
416 float: left;
No newline at end of file
417 margin: 10px;
No newline at end of file
418 border: 0px solid #f00 !important; }
No newline at end of file
419
No newline at end of file
420 .divTx label {
No newline at end of file
421 display: block; }
No newline at end of file
422
No newline at end of file
423 .divTx textarea {
No newline at end of file
424 width: 100px;
No newline at end of file
425 max-width: 100px;
No newline at end of file
426 height: 160px;
No newline at end of file
427 max-height: 165px;
No newline at end of file
428 text-align: justify;
No newline at end of file
429 border: 2px solid #eee !important;
No newline at end of file
430 font-family: "Ubuntu";
No newline at end of file
431 font-size: inherit;
No newline at end of file
432 line-height: 20px; }
No newline at end of file
433
No newline at end of file
434 .divTx p {
No newline at end of file
435 width: 100px;
No newline at end of file
436 max-width: 105px;
No newline at end of file
437 height: 160px;
No newline at end of file
438 max-height: 165px;
No newline at end of file
439 background: #fdfdfb;
No newline at end of file
440 padding: 2px;
No newline at end of file
441 border: 1px solid #eee !important;
No newline at end of file
442 font-family: 'Ubuntu', sans-serif;
No newline at end of file
443 font-size: inherit;
No newline at end of file
444 text-align: justify;
No newline at end of file
445 margin: 0 auto;
No newline at end of file
446 line-height: 20px; }
No newline at end of file
447
No newline at end of file
448 .divUes {
No newline at end of file
449 display: block;
No newline at end of file
450 margin: 10px; }
No newline at end of file
451
No newline at end of file
452 .divUes input[type=text] {
No newline at end of file
453 width: 240px;
No newline at end of file
454 max-width: 240px;
No newline at end of file
455 font-family: 'Ubuntu', sans-serif;
No newline at end of file
456 font-size: inherit; }
No newline at end of file
457
No newline at end of file
458 .divNewUes {
No newline at end of file
459 width: 350px;
No newline at end of file
460 display: block;
No newline at end of file
461 margin: 0px 10px;
No newline at end of file
462 padding: 0;
No newline at end of file
463 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
464 /*overflow: hidden;*/
No newline at end of file
465 border: 0px solid #f00 !important; }
No newline at end of file
466
No newline at end of file
467 .titleUes {
No newline at end of file
468 width: 35px;
No newline at end of file
469 text-align: right;
No newline at end of file
470 padding-right: 5px;
No newline at end of file
471 float: left;
No newline at end of file
472 line-height: 22px;
No newline at end of file
473 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
474 letter-spacing: 0.086em;
No newline at end of file
475 border: 0px solid #266 !important; }
No newline at end of file
476
No newline at end of file
477 .valueUes {
No newline at end of file
478 width: 300px;
No newline at end of file
479 float: left;
No newline at end of file
480 border: 0px solid #2f4 !important;
No newline at end of file
481 line-height: 22px; }
No newline at end of file
482
No newline at end of file
483 .lblUes {
No newline at end of file
484 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
485 color: #666;
No newline at end of file
486 font-size: 1.1em; }
No newline at end of file
487
No newline at end of file
488 .txtUnitUes {
No newline at end of file
489 width: 60px;
No newline at end of file
490 border: 0;
No newline at end of file
491 padding: 0px 2px;
No newline at end of file
492 text-align: center;
No newline at end of file
493 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
494 font-size: 0.95em;
No newline at end of file
495 border-bottom: 1px solid #666 !important; }
No newline at end of file
496 /*
No newline at end of file
497 .divNewUes input[type=text] {
No newline at end of file
498 width: 240px;
No newline at end of file
499 max-width: 240px;
No newline at end of file
500 line-height: 22px; }
No newline at end of file
501 */
No newline at end of file
502
No newline at end of file
503 .checkOnly, .divOnlyRx {
No newline at end of file
504 display: block;
No newline at end of file
505 line-height: 25px;
No newline at end of file
506 border: 0px solid #f00 !important; }
No newline at end of file
507
No newline at end of file
508 .divOnlyRx {
No newline at end of file
509 width: 350px;
No newline at end of file
510 margin: 5px 10px;
No newline at end of file
511 padding: 0;
No newline at end of file
512 font-family: 'Roboto Condensed', sans-serif; }
No newline at end of file
513
No newline at end of file
514 .checkOnly {
No newline at end of file
515 width: 120px;
No newline at end of file
516 float: left; }
No newline at end of file
517
No newline at end of file
518 .checkOnly input[type=checkbox], .divOnlyRx input[type=checkbox] {
No newline at end of file
519 width: 1em;
No newline at end of file
520 height: 1em; }
No newline at end of file
521
No newline at end of file
522 .divOnlyRx input {
No newline at end of file
523 padding: 0px;
No newline at end of file
524 float: left;
No newline at end of file
525 margin: 5px 8px; }
No newline at end of file
526
No newline at end of file
527 .divOnlyRx label {
No newline at end of file
528 line-height: 20px;
No newline at end of file
529 border: 0px solid #f00 !important; }
No newline at end of file
530
No newline at end of file
531 .overJRO img {
No newline at end of file
532 width: 400px;
No newline at end of file
533 height: 270px;
No newline at end of file
534 text-align: center;
No newline at end of file
535 vertical-align: middle;
No newline at end of file
536 margin: 10px 5px 5px 5px;
No newline at end of file
537 display: block;
No newline at end of file
538 background: #fdfdfb;
No newline at end of file
539 border: 1px solid #eee !important; }
No newline at end of file
540
No newline at end of file
541 .overJRO a {
No newline at end of file
542 text-align: center;
No newline at end of file
543 margin-left: 160px;
No newline at end of file
544 display: block; }
No newline at end of file
545
No newline at end of file
546 .activeOverJRO {
No newline at end of file
547 width: 60px;
No newline at end of file
548 padding: 0px 2px;
No newline at end of file
549 border-bottom: 1px solid #1494F6 !important; }
No newline at end of file
550
No newline at end of file
551 /****************************************************************************************/
No newline at end of file
552 /****** MENU DE NAVEGACION DE PATRONES **********************************/
No newline at end of file
553 /****************************************************************************************/
No newline at end of file
554 #divMnuPattern {
No newline at end of file
555 width: 280px;
No newline at end of file
556 height: 25px;
No newline at end of file
557 display: block;
No newline at end of file
558 float: right;
No newline at end of file
559 margin: 5px 40px 5px 0px;
No newline at end of file
560 border: 0px solid #1cc !important; }
No newline at end of file
561
No newline at end of file
562 #divMnuPattern li {
No newline at end of file
563 float: right;
No newline at end of file
564 display: block;
No newline at end of file
565 width: 60px;
No newline at end of file
566 border: 0px solid #2cc !important; }
No newline at end of file
567
No newline at end of file
568 #divMnuPattern a {
No newline at end of file
569 display: block;
No newline at end of file
570 line-height: 22px;
No newline at end of file
571 text-decoration: none;
No newline at end of file
572 padding: 0px 5px;
No newline at end of file
573 margin: 0px 2px;
No newline at end of file
574 text-align: center;
No newline at end of file
575 color: #1494F6;
No newline at end of file
576 border-bottom: 1px solid #1494F6 !important; }
No newline at end of file
577
No newline at end of file
578 #infoPattern {
No newline at end of file
579 display: block;
No newline at end of file
580 margin: 0px 25px;
No newline at end of file
581 border: 0px solid #1494f6 !important; }
No newline at end of file
582
No newline at end of file
583 #navPatterns {
No newline at end of file
584 margin: 0 auto;
No newline at end of file
585 width: 700px;
No newline at end of file
586 height: 30px;
No newline at end of file
587 border: 0px solid #d00 !important;
No newline at end of file
588 font-family: 'Ubuntu', sans-serif;
No newline at end of file
589 font-size: 14px;
No newline at end of file
590 padding: 5px 0px; }
No newline at end of file
591
No newline at end of file
592 #navPatternList {
No newline at end of file
593 margin: 0 auto;
No newline at end of file
594 border: 0px solid #ecc !important; }
No newline at end of file
595
No newline at end of file
596 #navPatternList ul {
No newline at end of file
597 list-style: none;
No newline at end of file
598 list-style-type: none;
No newline at end of file
599 margin: 0; }
No newline at end of file
600
No newline at end of file
601 #navPatternList ul li {
No newline at end of file
602 float: left;
No newline at end of file
603 width: 50px;
No newline at end of file
604 border: 1px solid #eee !important; }
No newline at end of file
605
No newline at end of file
606 #navPatternList a {
No newline at end of file
607 width: 50px;
No newline at end of file
608 display: block;
No newline at end of file
609 text-align: center;
No newline at end of file
610 line-height: 30px;
No newline at end of file
611 padding: 1px 0px;
No newline at end of file
612 border: 0px solid #1cc !important; }
No newline at end of file
613
No newline at end of file
614 .lnkPattern {
No newline at end of file
615 background-color: #ccc !important;
No newline at end of file
616 color: #eee; }
No newline at end of file
617
No newline at end of file
618 .lnkPatternSelected {
No newline at end of file
619 background-color: #2cc !important;
No newline at end of file
620 color: #fff; }
No newline at end of file
621
No newline at end of file
622 .lnkPatternActive {
No newline at end of file
623 color: #f66;
No newline at end of file
624 }
No newline at end of file
625
No newline at end of file
626 .divListofPatterns {
No newline at end of file
627 width: 650px;
No newline at end of file
628 display: block;
No newline at end of file
629 border: 1px solid #1cc !important;
No newline at end of file
630 margin: 0 auto; }
No newline at end of file
631
No newline at end of file
632 .divPattern {
No newline at end of file
633 width: 600px;
No newline at end of file
634 display: block;
No newline at end of file
635 border: 1px solid #f00 !important;
No newline at end of file
636 margin: 2px auto; }
No newline at end of file
637
No newline at end of file
638 /****************************************************************************************/
No newline at end of file
639 /****** HEADER *************/
No newline at end of file
640 /****************************************************************************************/
No newline at end of file
641 header nav {
No newline at end of file
642 width: 960px;
No newline at end of file
643 margin: 0 auto;
No newline at end of file
644 height: 100%;
No newline at end of file
645 border: 0px solid #1cc !important; }
No newline at end of file
646
No newline at end of file
647 header nav a {
No newline at end of file
648 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
649 font-size: 1.98em;
No newline at end of file
650 text-transform: uppercase;
No newline at end of file
651 width: 232px;
No newline at end of file
652 padding: 2px;
No newline at end of file
653 text-align: center;
No newline at end of file
654 border: 1px solid #ddd !important;
No newline at end of file
655 box-shadow: 1px 1px 2px #ddd;
No newline at end of file
656 display: block;
No newline at end of file
657 float: left;
No newline at end of file
658 height: 45px;
No newline at end of file
659 text-decoration: none;
No newline at end of file
660 background: #eee;
No newline at end of file
661 line-height: 45px;
No newline at end of file
662 color: #15425d;
No newline at end of file
663 margin: 0px 1px; }
No newline at end of file
664
No newline at end of file
665 header nav a.selected {
No newline at end of file
666 background: #666;
No newline at end of file
667 color: #fff; }
No newline at end of file
668
No newline at end of file
669 #Main_Head {
No newline at end of file
670 margin: 0 auto;
No newline at end of file
671 height: 100%;
No newline at end of file
672 border: 1px solid #ddd !important;
No newline at end of file
673 box-shadow: 1px 1px 2px #ddd;
No newline at end of file
674 border-radius: 5px;
No newline at end of file
675 display: block; }
No newline at end of file
676
No newline at end of file
677 .Main_Title {
No newline at end of file
678 font-size: 2em;
No newline at end of file
679 letter-spacing: 0.06em;
No newline at end of file
680 color: #444;
No newline at end of file
681 text-shadow: 2px 2px #ccc; }
No newline at end of file
682
No newline at end of file
683 /****************************************************************************************/
No newline at end of file
684 /****** FOOTER *************/
No newline at end of file
685 /****************************************************************************************/
No newline at end of file
686 footer p {
No newline at end of file
687 font-family: 'Roboto Condensed', sans-serif;
No newline at end of file
688 font-size: 0.98em; }
No newline at end of file
689
No newline at end of file
690 /****************************************************************************************/
No newline at end of file
691 /****** LOGIN *************/
No newline at end of file
692 /****************************************************************************************/
No newline at end of file
693 #contentLogin {
No newline at end of file
694 margin: 0;
No newline at end of file
695 padding: 0;
No newline at end of file
696 border: 0px solid #1cc; }
No newline at end of file
697
No newline at end of file
698 #MainColumnLogin {
No newline at end of file
699 margin: 2px auto;
No newline at end of file
700 border: 0px solid #f00 !important;
No newline at end of file
701 box-shadow: 1px 1px 2px #ddd;
No newline at end of file
702 border-radius: 2px;
No newline at end of file
703 background-color: #eee;
No newline at end of file
704 width: 100%;
No newline at end of file
705 padding: 5px 0px;
No newline at end of file
706 }
No newline at end of file
707
No newline at end of file
708 .row_reg {
No newline at end of file
709 margin: 5px auto;
No newline at end of file
710 display: block;
No newline at end of file
711 width: 90%;
No newline at end of file
712 border: 0px solid #1cc !important;
No newline at end of file
713 line-height: 22px;
No newline at end of file
714 }
No newline at end of file
715
No newline at end of file
716 .row_reg label, .row_reg input[type=text] {
No newline at end of file
717 float: left;
No newline at end of file
718 line-height: 22px;
No newline at end of file
719 }
No newline at end of file
720
No newline at end of file
721 #id_username, #id_password {
No newline at end of file
722 width: 160px;
No newline at end of file
723 line-height: 22px;
No newline at end of file
724 }
No newline at end of file
725
No newline at end of file
726 .row_reg label {
No newline at end of file
727 width: 400px;
No newline at end of file
728 text-align: right;
No newline at end of file
729 padding-right: 10px;
No newline at end of file
730 border: 0px solid #d22 !important;
No newline at end of file
731 }
No newline at end of file
732
No newline at end of file
733 .row_reg input[type=submit], .row_reg input[type=button] {
No newline at end of file
734 margin-left: 410px;
No newline at end of file
735 width: 80px;
No newline at end of file
736 }
No newline at end of file
737
No newline at end of file
738 #lblTitleLogin {
No newline at end of file
739 width: 100%;
No newline at end of file
740 text-align: center;
No newline at end of file
741 font-size: 1.2em;
No newline at end of file
742 font-weight: normal;
No newline at end of file
743 color: #222;
No newline at end of file
744 border: 0px solid #f00 !important;
No newline at end of file
745 background-color: #ccc;
No newline at end of file
746 } No newline at end of file
@@ -0,0 +1,5
1 /*! jQuery v1.9.1 | (c) 2005, 2012 jQuery Foundation, Inc. | jquery.org/license
No newline at end of file
2 //@ sourceMappingURL=jquery.min.map
No newline at end of file
3 */(function(e,t){var n,r,i=typeof t,o=e.document,a=e.location,s=e.jQuery,u=e.$,l={},c=[],p="1.9.1",f=c.concat,d=c.push,h=c.slice,g=c.indexOf,m=l.toString,y=l.hasOwnProperty,v=p.trim,b=function(e,t){return new b.fn.init(e,t,r)},x=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,w=/\S+/g,T=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,N=/^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/,C=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,k=/^[\],:{}\s]*$/,E=/(?:^|:|,)(?:\s*\[)+/g,S=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,A=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,j=/^-ms-/,D=/-([\da-z])/gi,L=function(e,t){return t.toUpperCase()},H=function(e){(o.addEventListener||"load"===e.type||"complete"===o.readyState)&&(q(),b.ready())},q=function(){o.addEventListener?(o.removeEventListener("DOMContentLoaded",H,!1),e.removeEventListener("load",H,!1)):(o.detachEvent("onreadystatechange",H),e.detachEvent("onload",H))};b.fn=b.prototype={jquery:p,constructor:b,init:function(e,n,r){var i,a;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 b?n[0]:n,b.merge(this,b.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:o,!0)),C.test(i[1])&&b.isPlainObject(n))for(i in n)b.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(a=o.getElementById(i[2]),a&&a.parentNode){if(a.id!==i[2])return r.find(e);this.length=1,this[0]=a}return this.context=o,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):b.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),b.makeArray(e,this))},selector:"",length:0,size:function(){return this.length},toArray:function(){return h.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=b.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return b.each(this,e,t)},ready:function(e){return b.ready.promise().done(e),this},slice:function(){return this.pushStack(h.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(b.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:d,sort:[].sort,splice:[].splice},b.fn.init.prototype=b.fn,b.extend=b.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},u=1,l=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},u=2),"object"==typeof s||b.isFunction(s)||(s={}),l===u&&(s=this,--u);l>u;u++)if(null!=(o=arguments[u]))for(i in o)e=s[i],r=o[i],s!==r&&(c&&r&&(b.isPlainObject(r)||(n=b.isArray(r)))?(n?(n=!1,a=e&&b.isArray(e)?e:[]):a=e&&b.isPlainObject(e)?e:{},s[i]=b.extend(c,a,r)):r!==t&&(s[i]=r));return s},b.extend({noConflict:function(t){return e.$===b&&(e.$=u),t&&e.jQuery===b&&(e.jQuery=s),b},isReady:!1,readyWait:1,holdReady:function(e){e?b.readyWait++:b.ready(!0)},ready:function(e){if(e===!0?!--b.readyWait:!b.isReady){if(!o.body)return setTimeout(b.ready);b.isReady=!0,e!==!0&&--b.readyWait>0||(n.resolveWith(o,[b]),b.fn.trigger&&b(o).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===b.type(e)},isArray:Array.isArray||function(e){return"array"===b.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?l[m.call(e)]||"object":typeof e},isPlainObject:function(e){if(!e||"object"!==b.type(e)||e.nodeType||b.isWindow(e))return!1;try{if(e.constructor&&!y.call(e,"constructor")&&!y.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||y.call(e,r)},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||o;var r=C.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=b.buildFragment([e],t,i),i&&b(i).remove(),b.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=b.trim(n),n&&k.test(n.replace(S,"@").replace(A,"]").replace(E,"")))?Function("return "+n)():(b.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||b.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&b.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(j,"ms-").replace(D,L)},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:v&&!v.call("\ufeff\u00a0")?function(e){return null==e?"":v.call(e)}:function(e){return null==e?"":(e+"").replace(T,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(M(Object(e))?b.merge(n,"string"==typeof e?[e]:e):d.call(n,e)),n},inArray:function(e,t,n){var r;if(t){if(g)return g.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 f.apply([],s)},guid:1,proxy:function(e,n){var r,i,o;return"string"==typeof n&&(o=e[n],n=e,e=o),b.isFunction(e)?(r=h.call(arguments,2),i=function(){return e.apply(n||this,r.concat(h.call(arguments)))},i.guid=e.guid=e.guid||b.guid++,i):t},access:function(e,n,r,i,o,a,s){var u=0,l=e.length,c=null==r;if("object"===b.type(r)){o=!0;for(u in r)b.access(e,n,u,r[u],!0,a,s)}else if(i!==t&&(o=!0,b.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=function(e,t,n){return c.call(b(e),n)})),n))for(;l>u;u++)n(e[u],r,s?i:i.call(e[u],u,n(e[u],r)));return o?e:c?n.call(e):l?n(e[0],r):a},now:function(){return(new Date).getTime()}}),b.ready.promise=function(t){if(!n)if(n=b.Deferred(),"complete"===o.readyState)setTimeout(b.ready);else if(o.addEventListener)o.addEventListener("DOMContentLoaded",H,!1),e.addEventListener("load",H,!1);else{o.attachEvent("onreadystatechange",H),e.attachEvent("onload",H);var r=!1;try{r=null==e.frameElement&&o.documentElement}catch(i){}r&&r.doScroll&&function a(){if(!b.isReady){try{r.doScroll("left")}catch(e){return setTimeout(a,50)}q(),b.ready()}}()}return n.promise(t)},b.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){l["[object "+t+"]"]=t.toLowerCase()});function M(e){var t=e.length,n=b.type(e);return b.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"number"==typeof t&&t>0&&t-1 in e)}r=b(o);var _={};function F(e){var t=_[e]={};return b.each(e.match(w)||[],function(e,n){t[n]=!0}),t}b.Callbacks=function(e){e="string"==typeof e?_[e]||F(e):b.extend({},e);var n,r,i,o,a,s,u=[],l=!e.once&&[],c=function(t){for(r=e.memory&&t,i=!0,a=s||0,s=0,o=u.length,n=!0;u&&o>a;a++)if(u[a].apply(t[0],t[1])===!1&&e.stopOnFalse){r=!1;break}n=!1,u&&(l?l.length&&c(l.shift()):r?u=[]:p.disable())},p={add:function(){if(u){var t=u.length;(function i(t){b.each(t,function(t,n){var r=b.type(n);"function"===r?e.unique&&p.has(n)||u.push(n):n&&n.length&&"string"!==r&&i(n)})})(arguments),n?o=u.length:r&&(s=t,c(r))}return this},remove:function(){return u&&b.each(arguments,function(e,t){var r;while((r=b.inArray(t,u,r))>-1)u.splice(r,1),n&&(o>=r&&o--,a>=r&&a--)}),this},has:function(e){return e?b.inArray(e,u)>-1:!(!u||!u.length)},empty:function(){return u=[],this},disable:function(){return u=l=r=t,this},disabled:function(){return!u},lock:function(){return l=t,r||p.disable(),this},locked:function(){return!l},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],!u||i&&!l||(n?l.push(t):c(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},b.extend({Deferred:function(e){var t=[["resolve","done",b.Callbacks("once memory"),"resolved"],["reject","fail",b.Callbacks("once memory"),"rejected"],["notify","progress",b.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return b.Deferred(function(n){b.each(t,function(t,o){var a=o[0],s=b.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&b.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?b.extend(e,r):r}},i={};return r.pipe=r.then,b.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=h.call(arguments),r=n.length,i=1!==r||e&&b.isFunction(e.promise)?r:0,o=1===i?e:b.Deferred(),a=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?h.call(arguments):r,n===s?o.notifyWith(t,n):--i||o.resolveWith(t,n)}},s,u,l;if(r>1)for(s=Array(r),u=Array(r),l=Array(r);r>t;t++)n[t]&&b.isFunction(n[t].promise)?n[t].promise().done(a(t,l,n)).fail(o.reject).progress(a(t,u,s)):--i;return i||o.resolveWith(l,n),o.promise()}}),b.support=function(){var t,n,r,a,s,u,l,c,p,f,d=o.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],!n||!r||!n.length)return{};s=o.createElement("select"),l=s.appendChild(o.createElement("option")),a=d.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t={getSetAttribute:"t"!==d.className,leadingWhitespace:3===d.firstChild.nodeType,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/top/.test(r.getAttribute("style")),hrefNormalized:"/a"===r.getAttribute("href"),opacity:/^0.5/.test(r.style.opacity),cssFloat:!!r.style.cssFloat,checkOn:!!a.value,optSelected:l.selected,enctype:!!o.createElement("form").enctype,html5Clone:"<:nav></:nav>"!==o.createElement("nav").cloneNode(!0).outerHTML,boxModel:"CSS1Compat"===o.compatMode,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},a.checked=!0,t.noCloneChecked=a.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!l.disabled;try{delete d.test}catch(h){t.deleteExpando=!1}a=o.createElement("input"),a.setAttribute("value",""),t.input=""===a.getAttribute("value"),a.value="t",a.setAttribute("type","radio"),t.radioValue="t"===a.value,a.setAttribute("checked","t"),a.setAttribute("name","t"),u=o.createDocumentFragment(),u.appendChild(a),t.appendChecked=a.checked,t.checkClone=u.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;return d.style.backgroundClip="content-box",d.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===d.style.backgroundClip,b(function(){var n,r,a,s="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",u=o.getElementsByTagName("body")[0];u&&(n=o.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",u.appendChild(n).appendChild(d),d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",a=d.getElementsByTagName("td"),a[0].style.cssText="padding:0;margin:0;border:0;display:none",p=0===a[0].offsetHeight,a[0].style.display="",a[1].style.display="none",t.reliableHiddenOffsets=p&&0===a[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%;",t.boxSizing=4===d.offsetWidth,t.doesNotIncludeMarginInBodyOffset=1!==u.offsetTop,e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(d,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(d,null)||{width:"4px"}).width,r=d.appendChild(o.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&&(u.style.zoom=1)),u.removeChild(n),n=d=a=r=null)}),n=s=u=l=r=a=null,t}();var O=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,B=/([A-Z])/g;function P(e,n,r,i){if(b.acceptData(e)){var o,a,s=b.expando,u="string"==typeof n,l=e.nodeType,p=l?b.cache:e,f=l?e[s]:e[s]&&s;if(f&&p[f]&&(i||p[f].data)||!u||r!==t)return f||(l?e[s]=f=c.pop()||b.guid++:f=s),p[f]||(p[f]={},l||(p[f].toJSON=b.noop)),("object"==typeof n||"function"==typeof n)&&(i?p[f]=b.extend(p[f],n):p[f].data=b.extend(p[f].data,n)),o=p[f],i||(o.data||(o.data={}),o=o.data),r!==t&&(o[b.camelCase(n)]=r),u?(a=o[n],null==a&&(a=o[b.camelCase(n)])):a=o,a}}function R(e,t,n){if(b.acceptData(e)){var r,i,o,a=e.nodeType,s=a?b.cache:e,u=a?e[b.expando]:b.expando;if(s[u]){if(t&&(o=n?s[u]:s[u].data)){b.isArray(t)?t=t.concat(b.map(t,b.camelCase)):t in o?t=[t]:(t=b.camelCase(t),t=t in o?[t]:t.split(" "));for(r=0,i=t.length;i>r;r++)delete o[t[r]];if(!(n?$:b.isEmptyObject)(o))return}(n||(delete s[u].data,$(s[u])))&&(a?b.cleanData([e],!0):b.support.deleteExpando||s!=s.window?delete s[u]:s[u]=null)}}}b.extend({cache:{},expando:"jQuery"+(p+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?b.cache[e[b.expando]]:e[b.expando],!!e&&!$(e)},data:function(e,t,n){return P(e,t,n)},removeData:function(e,t){return R(e,t)},_data:function(e,t,n){return P(e,t,n,!0)},_removeData:function(e,t){return R(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&b.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),b.fn.extend({data:function(e,n){var r,i,o=this[0],a=0,s=null;if(e===t){if(this.length&&(s=b.data(o),1===o.nodeType&&!b._data(o,"parsedAttrs"))){for(r=o.attributes;r.length>a;a++)i=r[a].name,i.indexOf("data-")||(i=b.camelCase(i.slice(5)),W(o,i,s[i]));b._data(o,"parsedAttrs",!0)}return s}return"object"==typeof e?this.each(function(){b.data(this,e)}):b.access(this,function(n){return n===t?o?W(o,e,b.data(o,e)):null:(this.each(function(){b.data(this,e,n)}),t)},null,n,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){b.removeData(this,e)})}});function W(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(B,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:O.test(r)?b.parseJSON(r):r}catch(o){}b.data(e,n,r)}else r=t}return r}function $(e){var t;for(t in e)if(("data"!==t||!b.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}b.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=b._data(e,n),r&&(!i||b.isArray(r)?i=b._data(e,n,b.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=b.queue(e,t),r=n.length,i=n.shift(),o=b._queueHooks(e,t),a=function(){b.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),o.cur=i,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 b._data(e,n)||b._data(e,n,{empty:b.Callbacks("once memory").add(function(){b._removeData(e,t+"queue"),b._removeData(e,n)})})}}),b.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?b.queue(this[0],e):n===t?this:this.each(function(){var t=b.queue(this,e,n);b._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&b.dequeue(this,e)})},dequeue:function(e){return this.each(function(){b.dequeue(this,e)})},delay:function(e,t){return e=b.fx?b.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=b.Deferred(),a=this,s=this.length,u=function(){--i||o.resolveWith(a,[a])};"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=b._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(u));return u(),o.promise(n)}});var I,z,X=/[\t\r\n]/g,U=/\r/g,V=/^(?:input|select|textarea|button|object)$/i,Y=/^(?:a|area)$/i,J=/^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i,G=/^(?:checked|selected)$/i,Q=b.support.getSetAttribute,K=b.support.input;b.fn.extend({attr:function(e,t){return b.access(this,b.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){b.removeAttr(this,e)})},prop:function(e,t){return b.access(this,b.prop,e,t,arguments.length>1)},removeProp:function(e){return e=b.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,u="string"==typeof e&&e;if(b.isFunction(e))return this.each(function(t){b(this).addClass(e.call(this,t,this.className))});if(u)for(t=(e||"").match(w)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(X," "):" ")){o=0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=b.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,u=0===arguments.length||"string"==typeof e&&e;if(b.isFunction(e))return this.each(function(t){b(this).removeClass(e.call(this,t,this.className))});if(u)for(t=(e||"").match(w)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(X," "):"")){o=0;while(i=t[o++])while(r.indexOf(" "+i+" ")>=0)r=r.replace(" "+i+" "," ");n.className=e?b.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e,r="boolean"==typeof t;return b.isFunction(e)?this.each(function(n){b(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n){var o,a=0,s=b(this),u=t,l=e.match(w)||[];while(o=l[a++])u=r?u:!s.hasClass(o),s[u?"addClass":"removeClass"](o)}else(n===i||"boolean"===n)&&(this.className&&b._data(this,"__className__",this.className),this.className=this.className||e===!1?"":b._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(X," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)return i=b.isFunction(e),this.each(function(n){var o,a=b(this);1===this.nodeType&&(o=i?e.call(this,n,a.val()):e,null==o?o="":"number"==typeof o?o+="":b.isArray(o)&&(o=b.map(o,function(e){return null==e?"":e+""})),r=b.valHooks[this.type]||b.valHooks[this.nodeName.toLowerCase()],r&&"set"in r&&r.set(this,o,"value")!==t||(this.value=o))});if(o)return r=b.valHooks[o.type]||b.valHooks[o.nodeName.toLowerCase()],r&&"get"in r&&(n=r.get(o,"value"))!==t?n:(n=o.value,"string"==typeof n?n.replace(U,""):null==n?"":n)}}}),b.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value: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,u=0>i?s:o?i:0;for(;s>u;u++)if(n=r[u],!(!n.selected&&u!==i||(b.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&b.nodeName(n.parentNode,"optgroup"))){if(t=b(n).val(),o)return t;a.push(t)}return a},set:function(e,t){var n=b.makeArray(t);return b(e).find("option").each(function(){this.selected=b.inArray(b(this).val(),n)>=0}),n.length||(e.selectedIndex=-1),n}}},attr:function(e,n,r){var o,a,s,u=e.nodeType;if(e&&3!==u&&8!==u&&2!==u)return typeof e.getAttribute===i?b.prop(e,n,r):(a=1!==u||!b.isXMLDoc(e),a&&(n=n.toLowerCase(),o=b.attrHooks[n]||(J.test(n)?z:I)),r===t?o&&a&&"get"in o&&null!==(s=o.get(e,n))?s:(typeof e.getAttribute!==i&&(s=e.getAttribute(n)),null==s?t:s):null!==r?o&&a&&"set"in o&&(s=o.set(e,r,n))!==t?s:(e.setAttribute(n,r+""),r):(b.removeAttr(e,n),t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(w);if(o&&1===e.nodeType)while(n=o[i++])r=b.propFix[n]||n,J.test(n)?!Q&&G.test(n)?e[b.camelCase("default-"+n)]=e[r]=!1:e[r]=!1:b.attr(e,n,""),e.removeAttribute(Q?n:r)},attrHooks:{type:{set:function(e,t){if(!b.support.radioValue&&"radio"===t&&b.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!b.isXMLDoc(e),a&&(n=b.propFix[n]||n,o=b.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 n=e.getAttributeNode("tabindex");return n&&n.specified?parseInt(n.value,10):V.test(e.nodeName)||Y.test(e.nodeName)&&e.href?0:t}}}}),z={get:function(e,n){var r=b.prop(e,n),i="boolean"==typeof r&&e.getAttribute(n),o="boolean"==typeof r?K&&Q?null!=i:G.test(n)?e[b.camelCase("default-"+n)]:!!i:e.getAttributeNode(n);return o&&o.value!==!1?n.toLowerCase():t},set:function(e,t,n){return t===!1?b.removeAttr(e,n):K&&Q||!G.test(n)?e.setAttribute(!Q&&b.propFix[n]||n,n):e[b.camelCase("default-"+n)]=e[n]=!0,n}},K&&Q||(b.attrHooks.value={get:function(e,n){var r=e.getAttributeNode(n);return b.nodeName(e,"input")?e.defaultValue:r&&r.specified?r.value:t},set:function(e,n,r){return b.nodeName(e,"input")?(e.defaultValue=n,t):I&&I.set(e,n,r)}}),Q||(I=b.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n);return r&&("id"===n||"name"===n||"coords"===n?""!==r.value:r.specified)?r.value:t},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}},b.attrHooks.contenteditable={get:I.get,set:function(e,t,n){I.set(e,""===t?!1:t,n)}},b.each(["width","height"],function(e,n){b.attrHooks[n]=b.extend(b.attrHooks[n],{set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}})})),b.support.hrefNormalized||(b.each(["href","src","width","height"],function(e,n){b.attrHooks[n]=b.extend(b.attrHooks[n],{get:function(e){var r=e.getAttribute(n,2);return null==r?t:r}})}),b.each(["href","src"],function(e,t){b.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}})),b.support.style||(b.attrHooks.style={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style.cssText=t+""}}),b.support.optSelected||(b.propHooks.selected=b.extend(b.propHooks.selected,{get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}})),b.support.enctype||(b.propFix.enctype="encoding"),b.support.checkOn||b.each(["radio","checkbox"],function(){b.valHooks[this]={get:function(e){return null===e.getAttribute("value")?"on":e.value}}}),b.each(["radio","checkbox"],function(){b.valHooks[this]=b.extend(b.valHooks[this],{set:function(e,n){return b.isArray(n)?e.checked=b.inArray(b(e).val(),n)>=0:t}})});var Z=/^(?:input|select|textarea)$/i,et=/^key/,tt=/^(?:mouse|contextmenu)|click/,nt=/^(?:focusinfocus|focusoutblur)$/,rt=/^([^.]*)(?:\.(.+)|)$/;function it(){return!0}function ot(){return!1}b.event={global:{},add:function(e,n,r,o,a){var s,u,l,c,p,f,d,h,g,m,y,v=b._data(e);if(v){r.handler&&(c=r,r=c.handler,a=c.selector),r.guid||(r.guid=b.guid++),(u=v.events)||(u=v.events={}),(f=v.handle)||(f=v.handle=function(e){return typeof b===i||e&&b.event.triggered===e.type?t:b.event.dispatch.apply(f.elem,arguments)},f.elem=e),n=(n||"").match(w)||[""],l=n.length;while(l--)s=rt.exec(n[l])||[],g=y=s[1],m=(s[2]||"").split(".").sort(),p=b.event.special[g]||{},g=(a?p.delegateType:p.bindType)||g,p=b.event.special[g]||{},d=b.extend({type:g,origType:y,data:o,handler:r,guid:r.guid,selector:a,needsContext:a&&b.expr.match.needsContext.test(a),namespace:m.join(".")},c),(h=u[g])||(h=u[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),b.event.global[g]=!0;e=null}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,p,f,d,h,g,m=b.hasData(e)&&b._data(e);if(m&&(c=m.events)){t=(t||"").match(w)||[""],l=t.length;while(l--)if(s=rt.exec(t[l])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){p=b.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,f=c[d]||[],s=s[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),u=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));u&&!f.length&&(p.teardown&&p.teardown.call(e,h,m.handle)!==!1||b.removeEvent(e,d,m.handle),delete c[d])}else for(d in c)b.event.remove(e,d+t[l],n,r,!0);b.isEmptyObject(c)&&(delete m.handle,b._removeData(e,"events"))}},trigger:function(n,r,i,a){var s,u,l,c,p,f,d,h=[i||o],g=y.call(n,"type")?n.type:n,m=y.call(n,"namespace")?n.namespace.split("."):[];if(l=f=i=i||o,3!==i.nodeType&&8!==i.nodeType&&!nt.test(g+b.event.triggered)&&(g.indexOf(".")>=0&&(m=g.split("."),g=m.shift(),m.sort()),u=0>g.indexOf(":")&&"on"+g,n=n[b.expando]?n:new b.Event(g,"object"==typeof n&&n),n.isTrigger=!0,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]:b.makeArray(r,[n]),p=b.event.special[g]||{},a||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!a&&!p.noBubble&&!b.isWindow(i)){for(c=p.delegateType||g,nt.test(c+g)||(l=l.parentNode);l;l=l.parentNode)h.push(l),f=l;f===(i.ownerDocument||o)&&h.push(f.defaultView||f.parentWindow||e)}d=0;while((l=h[d++])&&!n.isPropagationStopped())n.type=d>1?c:p.bindType||g,s=(b._data(l,"events")||{})[n.type]&&b._data(l,"handle"),s&&s.apply(l,r),s=u&&l[u],s&&b.acceptData(l)&&s.apply&&s.apply(l,r)===!1&&n.preventDefault();if(n.type=g,!(a||n.isDefaultPrevented()||p._default&&p._default.apply(i.ownerDocument,r)!==!1||"click"===g&&b.nodeName(i,"a")||!b.acceptData(i)||!u||!i[g]||b.isWindow(i))){f=i[u],f&&(i[u]=null),b.event.triggered=g;try{i[g]()}catch(v){}b.event.triggered=t,f&&(i[u]=f)}return n.result}},dispatch:function(e){e=b.event.fix(e);var n,r,i,o,a,s=[],u=h.call(arguments),l=(b._data(this,"events")||{})[e.type]||[],c=b.event.special[e.type]||{};if(u[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){s=b.event.handlers.call(this,e,l),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=((b.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,u),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=[],u=n.delegateCount,l=e.target;if(u&&l.nodeType&&(!e.button||"click"!==e.type))for(;l!=this;l=l.parentNode||this)if(1===l.nodeType&&(l.disabled!==!0||"click"!==e.type)){for(o=[],a=0;u>a;a++)i=n[a],r=i.selector+" ",o[r]===t&&(o[r]=i.needsContext?b(r,this).index(l)>=0:b.find(r,this,null,[l]).length),o[r]&&o.push(i);o.length&&s.push({elem:l,handlers:o})}return n.length>u&&s.push({elem:this,handlers:n.slice(u)}),s},fix:function(e){if(e[b.expando])return e;var t,n,r,i=e.type,a=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 b.Event(a),t=r.length;while(t--)n=r[t],e[n]=a[n];return e.target||(e.target=a.srcElement||o),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,s.filter?s.filter(e,a):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,a,s=n.button,u=n.fromElement;return null==e.pageX&&null!=n.clientX&&(i=e.target.ownerDocument||o,a=i.documentElement,r=i.body,e.pageX=n.clientX+(a&&a.scrollLeft||r&&r.scrollLeft||0)-(a&&a.clientLeft||r&&r.clientLeft||0),e.pageY=n.clientY+(a&&a.scrollTop||r&&r.scrollTop||0)-(a&&a.clientTop||r&&r.clientTop||0)),!e.relatedTarget&&u&&(e.relatedTarget=u===e.target?n.toElement:u),e.which||s===t||(e.which=1&s?1:2&s?3:4&s?2:0),e}},special:{load:{noBubble:!0},click:{trigger:function(){return b.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):t}},focus:{trigger:function(){if(this!==o.activeElement&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){return this===o.activeElement&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=b.extend(new b.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?b.event.trigger(i,null,t):b.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},b.removeEvent=o.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))},b.Event=function(e,n){return this instanceof b.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&&b.extend(this,n),this.timeStamp=e&&e.timeStamp||b.now(),this[b.expando]=!0,t):new b.Event(e,n)},b.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()}},b.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){b.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;
No newline at end of file
4 return(!i||i!==r&&!b.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),b.support.submitBubbles||(b.event.special.submit={setup:function(){return b.nodeName(this,"form")?!1:(b.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=b.nodeName(n,"input")||b.nodeName(n,"button")?n.form:t;r&&!b._data(r,"submitBubbles")&&(b.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),b._data(r,"submitBubbles",!0))}),t)},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&b.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return b.nodeName(this,"form")?!1:(b.event.remove(this,"._submit"),t)}}),b.support.changeBubbles||(b.event.special.change={setup:function(){return Z.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(b.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),b.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),b.event.simulate("change",this,e,!0)})),!1):(b.event.add(this,"beforeactivate._change",function(e){var t=e.target;Z.test(t.nodeName)&&!b._data(t,"changeBubbles")&&(b.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||b.event.simulate("change",this.parentNode,e,!0)}),b._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 b.event.remove(this,"._change"),!Z.test(this.nodeName)}}),b.support.focusinBubbles||b.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){b.event.simulate(t,e.target,b.event.fix(e),!0)};b.event.special[t]={setup:function(){0===n++&&o.addEventListener(e,r,!0)},teardown:function(){0===--n&&o.removeEventListener(e,r,!0)}}}),b.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 b().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=b.guid++)),this.each(function(){b.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,b(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(){b.event.remove(this,e,r,n)})},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)},trigger:function(e,t){return this.each(function(){b.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?b.event.trigger(e,n,r,!0):t}}),function(e,t){var n,r,i,o,a,s,u,l,c,p,f,d,h,g,m,y,v,x="sizzle"+-new Date,w=e.document,T={},N=0,C=0,k=it(),E=it(),S=it(),A=typeof t,j=1<<31,D=[],L=D.pop,H=D.push,q=D.slice,M=D.indexOf||function(e){var t=0,n=this.length;for(;n>t;t++)if(this[t]===e)return t;return-1},_="[\\x20\\t\\r\\n\\f]",F="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",O=F.replace("w","w#"),B="([*^$|!~]?=)",P="\\["+_+"*("+F+")"+_+"*(?:"+B+_+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+O+")|)|)"+_+"*\\]",R=":("+F+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+P.replace(3,8)+")*)|.*)\\)|)",W=RegExp("^"+_+"+|((?:^|[^\\\\])(?:\\\\.)*)"+_+"+$","g"),$=RegExp("^"+_+"*,"+_+"*"),I=RegExp("^"+_+"*([\\x20\\t\\r\\n\\f>+~])"+_+"*"),z=RegExp(R),X=RegExp("^"+O+"$"),U={ID:RegExp("^#("+F+")"),CLASS:RegExp("^\\.("+F+")"),NAME:RegExp("^\\[name=['\"]?("+F+")['\"]?\\]"),TAG:RegExp("^("+F.replace("w","w*")+")"),ATTR:RegExp("^"+P),PSEUDO:RegExp("^"+R),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+_+"*(even|odd|(([+-]|)(\\d*)n|)"+_+"*(?:([+-]|)"+_+"*(\\d+)|))"+_+"*\\)|)","i"),needsContext:RegExp("^"+_+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+_+"*((?:-\\d)?\\d*)"+_+"*\\)|)(?=[^-]|$)","i")},V=/[\x20\t\r\n\f]*[+~]/,Y=/^[^{]+\{\s*\[native code/,J=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,G=/^(?:input|select|textarea|button)$/i,Q=/^h\d$/i,K=/'|\\/g,Z=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,et=/\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g,tt=function(e,t){var n="0x"+t-65536;return n!==n?t:0>n?String.fromCharCode(n+65536):String.fromCharCode(55296|n>>10,56320|1023&n)};try{q.call(w.documentElement.childNodes,0)[0].nodeType}catch(nt){q=function(e){var t,n=[];while(t=this[e++])n.push(t);return n}}function rt(e){return Y.test(e+"")}function it(){var e,t=[];return e=function(n,r){return t.push(n+=" ")>i.cacheLength&&delete e[t.shift()],e[n]=r}}function ot(e){return e[x]=!0,e}function at(e){var t=p.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}}function st(e,t,n,r){var i,o,a,s,u,l,f,g,m,v;if((t?t.ownerDocument||t:w)!==p&&c(t),t=t||p,n=n||[],!e||"string"!=typeof e)return n;if(1!==(s=t.nodeType)&&9!==s)return[];if(!d&&!r){if(i=J.exec(e))if(a=i[1]){if(9===s){if(o=t.getElementById(a),!o||!o.parentNode)return n;if(o.id===a)return n.push(o),n}else if(t.ownerDocument&&(o=t.ownerDocument.getElementById(a))&&y(t,o)&&o.id===a)return n.push(o),n}else{if(i[2])return H.apply(n,q.call(t.getElementsByTagName(e),0)),n;if((a=i[3])&&T.getByClassName&&t.getElementsByClassName)return H.apply(n,q.call(t.getElementsByClassName(a),0)),n}if(T.qsa&&!h.test(e)){if(f=!0,g=x,m=t,v=9===s&&e,1===s&&"object"!==t.nodeName.toLowerCase()){l=ft(e),(f=t.getAttribute("id"))?g=f.replace(K,"\\$&"):t.setAttribute("id",g),g="[id='"+g+"'] ",u=l.length;while(u--)l[u]=g+dt(l[u]);m=V.test(e)&&t.parentNode||t,v=l.join(",")}if(v)try{return H.apply(n,q.call(m.querySelectorAll(v),0)),n}catch(b){}finally{f||t.removeAttribute("id")}}}return wt(e.replace(W,"$1"),t,n,r)}a=st.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},c=st.setDocument=function(e){var n=e?e.ownerDocument||e:w;return n!==p&&9===n.nodeType&&n.documentElement?(p=n,f=n.documentElement,d=a(n),T.tagNameNoComments=at(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),T.attributes=at(function(e){e.innerHTML="<select></select>";var t=typeof e.lastChild.getAttribute("multiple");return"boolean"!==t&&"string"!==t}),T.getByClassName=at(function(e){return e.innerHTML="<div class='hidden e'></div><div class='hidden'></div>",e.getElementsByClassName&&e.getElementsByClassName("e").length?(e.lastChild.className="e",2===e.getElementsByClassName("e").length):!1}),T.getByName=at(function(e){e.id=x+0,e.innerHTML="<a name='"+x+"'></a><div name='"+x+"'></div>",f.insertBefore(e,f.firstChild);var t=n.getElementsByName&&n.getElementsByName(x).length===2+n.getElementsByName(x+0).length;return T.getIdNotName=!n.getElementById(x),f.removeChild(e),t}),i.attrHandle=at(function(e){return e.innerHTML="<a href='#'></a>",e.firstChild&&typeof e.firstChild.getAttribute!==A&&"#"===e.firstChild.getAttribute("href")})?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},T.getIdNotName?(i.find.ID=function(e,t){if(typeof t.getElementById!==A&&!d){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},i.filter.ID=function(e){var t=e.replace(et,tt);return function(e){return e.getAttribute("id")===t}}):(i.find.ID=function(e,n){if(typeof n.getElementById!==A&&!d){var r=n.getElementById(e);return r?r.id===e||typeof r.getAttributeNode!==A&&r.getAttributeNode("id").value===e?[r]:t:[]}},i.filter.ID=function(e){var t=e.replace(et,tt);return function(e){var n=typeof e.getAttributeNode!==A&&e.getAttributeNode("id");return n&&n.value===t}}),i.find.TAG=T.tagNameNoComments?function(e,n){return typeof n.getElementsByTagName!==A?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},i.find.NAME=T.getByName&&function(e,n){return typeof n.getElementsByName!==A?n.getElementsByName(name):t},i.find.CLASS=T.getByClassName&&function(e,n){return typeof n.getElementsByClassName===A||d?t:n.getElementsByClassName(e)},g=[],h=[":focus"],(T.qsa=rt(n.querySelectorAll))&&(at(function(e){e.innerHTML="<select><option selected=''></option></select>",e.querySelectorAll("[selected]").length||h.push("\\["+_+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||h.push(":checked")}),at(function(e){e.innerHTML="<input type='hidden' i=''/>",e.querySelectorAll("[i^='']").length&&h.push("[*^$]="+_+"*(?:\"\"|'')"),e.querySelectorAll(":enabled").length||h.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),h.push(",.*:")})),(T.matchesSelector=rt(m=f.matchesSelector||f.mozMatchesSelector||f.webkitMatchesSelector||f.oMatchesSelector||f.msMatchesSelector))&&at(function(e){T.disconnectedMatch=m.call(e,"div"),m.call(e,"[s!='']:x"),g.push("!=",R)}),h=RegExp(h.join("|")),g=RegExp(g.join("|")),y=rt(f.contains)||f.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},v=f.compareDocumentPosition?function(e,t){var r;return e===t?(u=!0,0):(r=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t))?1&r||e.parentNode&&11===e.parentNode.nodeType?e===n||y(w,e)?-1:t===n||y(w,t)?1:0:4&r?-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 u=!0,0;if(!o||!a)return e===n?-1:t===n?1:o?-1:a?1:0;if(o===a)return ut(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?ut(s[i],l[i]):s[i]===w?-1:l[i]===w?1:0},u=!1,[0,0].sort(v),T.detectDuplicates=u,p):p},st.matches=function(e,t){return st(e,null,null,t)},st.matchesSelector=function(e,t){if((e.ownerDocument||e)!==p&&c(e),t=t.replace(Z,"='$1']"),!(!T.matchesSelector||d||g&&g.test(t)||h.test(t)))try{var n=m.call(e,t);if(n||T.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(r){}return st(t,p,null,[e]).length>0},st.contains=function(e,t){return(e.ownerDocument||e)!==p&&c(e),y(e,t)},st.attr=function(e,t){var n;return(e.ownerDocument||e)!==p&&c(e),d||(t=t.toLowerCase()),(n=i.attrHandle[t])?n(e):d||T.attributes?e.getAttribute(t):((n=e.getAttributeNode(t))||e.getAttribute(t))&&e[t]===!0?t:n&&n.specified?n.value:null},st.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},st.uniqueSort=function(e){var t,n=[],r=1,i=0;if(u=!T.detectDuplicates,e.sort(v),u){for(;t=e[r];r++)t===e[r-1]&&(i=n.push(r));while(i--)e.splice(n[i],1)}return e};function ut(e,t){var n=t&&e,r=n&&(~t.sourceIndex||j)-(~e.sourceIndex||j);if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function lt(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function ct(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function pt(e){return ot(function(t){return t=+t,ot(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]))})})}o=st.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+=o(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=o(t);return n},i=st.selectors={cacheLength:50,createPseudo:ot,match:U,find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(et,tt),e[3]=(e[4]||e[5]||"").replace(et,tt),"~="===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]||st.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]&&st.error(e[0]),e},PSEUDO:function(e){var t,n=!e[5]&&e[2];return U.CHILD.test(e[0])?null:(e[4]?e[2]=e[4]:n&&z.test(n)&&(t=ft(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){return"*"===e?function(){return!0}:(e=e.replace(et,tt).toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=k[e+" "];return t||(t=RegExp("(^|"+_+")"+e+"("+_+"|$)"))&&k(e,function(e){return t.test(e.className||typeof e.getAttribute!==A&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=st.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,u){var l,c,p,f,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!u&&!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[x]||(m[x]={}),l=c[e]||[],d=l[0]===N&&l[1],f=l[0]===N&&l[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]=[N,d,f];break}}else if(v&&(l=(t[x]||(t[x]={}))[e])&&l[0]===N)f=l[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[x]||(p[x]={}))[e]=[N,f]),p===t))break;return f-=i,f===r||0===f%r&&f/r>=0}}},PSEUDO:function(e,t){var n,r=i.pseudos[e]||i.setFilters[e.toLowerCase()]||st.error("unsupported pseudo: "+e);return r[x]?r(t):r.length>1?(n=[e,e,"",t],i.setFilters.hasOwnProperty(e.toLowerCase())?ot(function(e,n){var i,o=r(e,t),a=o.length;while(a--)i=M.call(e,o[a]),e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:ot(function(e){var t=[],n=[],r=s(e.replace(W,"$1"));return r[x]?ot(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:ot(function(e){return function(t){return st(e,t).length>0}}),contains:ot(function(e){return function(t){return(t.textContent||t.innerText||o(t)).indexOf(e)>-1}}),lang:ot(function(e){return X.test(e||"")||st.error("unsupported lang: "+e),e=e.replace(et,tt).toLowerCase(),function(t){var n;do if(n=d?t.getAttribute("xml:lang")||t.getAttribute("lang"):t.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===f},focus:function(e){return e===p.activeElement&&(!p.hasFocus||p.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!i.pseudos.empty(e)},header:function(e){return Q.test(e.nodeName)},input:function(e){return G.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:pt(function(){return[0]}),last:pt(function(e,t){return[t-1]}),eq:pt(function(e,t,n){return[0>n?n+t:n]}),even:pt(function(e,t){var n=0;for(;t>n;n+=2)e.push(n);return e}),odd:pt(function(e,t){var n=1;for(;t>n;n+=2)e.push(n);return e}),lt:pt(function(e,t,n){var r=0>n?n+t:n;for(;--r>=0;)e.push(r);return e}),gt:pt(function(e,t,n){var r=0>n?n+t:n;for(;t>++r;)e.push(r);return e})}};for(n in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})i.pseudos[n]=lt(n);for(n in{submit:!0,reset:!0})i.pseudos[n]=ct(n);function ft(e,t){var n,r,o,a,s,u,l,c=E[e+" "];if(c)return t?0:c.slice(0);s=e,u=[],l=i.preFilter;while(s){(!n||(r=$.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),u.push(o=[])),n=!1,(r=I.exec(s))&&(n=r.shift(),o.push({value:n,type:r[0].replace(W," ")}),s=s.slice(n.length));for(a in i.filter)!(r=U[a].exec(s))||l[a]&&!(r=l[a](r))||(n=r.shift(),o.push({value:n,type:a,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?st.error(e):E(e,u).slice(0)}function dt(e){var t=0,n=e.length,r="";for(;n>t;t++)r+=e[t].value;return r}function ht(e,t,n){var i=t.dir,o=n&&"parentNode"===i,a=C++;return t.first?function(t,n,r){while(t=t[i])if(1===t.nodeType||o)return e(t,n,r)}:function(t,n,s){var u,l,c,p=N+" "+a;if(s){while(t=t[i])if((1===t.nodeType||o)&&e(t,n,s))return!0}else while(t=t[i])if(1===t.nodeType||o)if(c=t[x]||(t[x]={}),(l=c[i])&&l[0]===p){if((u=l[1])===!0||u===r)return u===!0}else if(l=c[i]=[p],l[1]=e(t,n,s)||r,l[1]===!0)return!0}}function gt(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 mt(e,t,n,r,i){var o,a=[],s=0,u=e.length,l=null!=t;for(;u>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),l&&t.push(s));return a}function yt(e,t,n,r,i,o){return r&&!r[x]&&(r=yt(r)),i&&!i[x]&&(i=yt(i,o)),ot(function(o,a,s,u){var l,c,p,f=[],d=[],h=a.length,g=o||xt(t||"*",s.nodeType?[s]:s,[]),m=!e||!o&&t?g:mt(g,f,e,s,u),y=n?i||(o?e:h||r)?[]:a:m;if(n&&n(m,y,s,u),r){l=mt(y,d),r(l,[],s,u),c=l.length;while(c--)(p=l[c])&&(y[d[c]]=!(m[d[c]]=p))}if(o){if(i||e){if(i){l=[],c=y.length;while(c--)(p=y[c])&&l.push(m[c]=p);i(null,y=[],l,u)}c=y.length;while(c--)(p=y[c])&&(l=i?M.call(o,p):f[c])>-1&&(o[l]=!(a[l]=p))}}else y=mt(y===a?y.splice(h,y.length):y),i?i(null,a,y,u):H.apply(a,y)})}function vt(e){var t,n,r,o=e.length,a=i.relative[e[0].type],s=a||i.relative[" "],u=a?1:0,c=ht(function(e){return e===t},s,!0),p=ht(function(e){return M.call(t,e)>-1},s,!0),f=[function(e,n,r){return!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):p(e,n,r))}];for(;o>u;u++)if(n=i.relative[e[u].type])f=[ht(gt(f),n)];else{if(n=i.filter[e[u].type].apply(null,e[u].matches),n[x]){for(r=++u;o>r;r++)if(i.relative[e[r].type])break;return yt(u>1&&gt(f),u>1&&dt(e.slice(0,u-1)).replace(W,"$1"),n,r>u&&vt(e.slice(u,r)),o>r&&vt(e=e.slice(r)),o>r&&dt(e))}f.push(n)}return gt(f)}function bt(e,t){var n=0,o=t.length>0,a=e.length>0,s=function(s,u,c,f,d){var h,g,m,y=[],v=0,b="0",x=s&&[],w=null!=d,T=l,C=s||a&&i.find.TAG("*",d&&u.parentNode||u),k=N+=null==T?1:Math.random()||.1;for(w&&(l=u!==p&&u,r=n);null!=(h=C[b]);b++){if(a&&h){g=0;while(m=e[g++])if(m(h,u,c)){f.push(h);break}w&&(N=k,r=++n)}o&&((h=!m&&h)&&v--,s&&x.push(h))}if(v+=b,o&&b!==v){g=0;while(m=t[g++])m(x,y,u,c);if(s){if(v>0)while(b--)x[b]||y[b]||(y[b]=L.call(f));y=mt(y)}H.apply(f,y),w&&!s&&y.length>0&&v+t.length>1&&st.uniqueSort(f)}return w&&(N=k,l=T),x};return o?ot(s):s}s=st.compile=function(e,t){var n,r=[],i=[],o=S[e+" "];if(!o){t||(t=ft(e)),n=t.length;while(n--)o=vt(t[n]),o[x]?r.push(o):i.push(o);o=S(e,bt(i,r))}return o};function xt(e,t,n){var r=0,i=t.length;for(;i>r;r++)st(e,t[r],n);return n}function wt(e,t,n,r){var o,a,u,l,c,p=ft(e);if(!r&&1===p.length){if(a=p[0]=p[0].slice(0),a.length>2&&"ID"===(u=a[0]).type&&9===t.nodeType&&!d&&i.relative[a[1].type]){if(t=i.find.ID(u.matches[0].replace(et,tt),t)[0],!t)return n;e=e.slice(a.shift().value.length)}o=U.needsContext.test(e)?0:a.length;while(o--){if(u=a[o],i.relative[l=u.type])break;if((c=i.find[l])&&(r=c(u.matches[0].replace(et,tt),V.test(a[0].type)&&t.parentNode||t))){if(a.splice(o,1),e=r.length&&dt(a),!e)return H.apply(n,q.call(r,0)),n;break}}}return s(e,p)(r,t,d,n,V.test(e)),n}i.pseudos.nth=i.pseudos.eq;function Tt(){}i.filters=Tt.prototype=i.pseudos,i.setFilters=new Tt,c(),st.attr=b.attr,b.find=st,b.expr=st.selectors,b.expr[":"]=b.expr.pseudos,b.unique=st.uniqueSort,b.text=st.getText,b.isXMLDoc=st.isXML,b.contains=st.contains}(e);var at=/Until$/,st=/^(?:parents|prev(?:Until|All))/,ut=/^.[^:#\[\.,]*$/,lt=b.expr.match.needsContext,ct={children:!0,contents:!0,next:!0,prev:!0};b.fn.extend({find:function(e){var t,n,r,i=this.length;if("string"!=typeof e)return r=this,this.pushStack(b(e).filter(function(){for(t=0;i>t;t++)if(b.contains(r[t],this))return!0}));for(n=[],t=0;i>t;t++)b.find(e,this[t],n);return n=this.pushStack(i>1?b.unique(n):n),n.selector=(this.selector?this.selector+" ":"")+e,n},has:function(e){var t,n=b(e,this),r=n.length;return this.filter(function(){for(t=0;r>t;t++)if(b.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(ft(this,e,!1))},filter:function(e){return this.pushStack(ft(this,e,!0))},is:function(e){return!!e&&("string"==typeof e?lt.test(e)?b(e,this.context).index(this[0])>=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,o=[],a=lt.test(e)||"string"!=typeof e?b(e,t||this.context):0;for(;i>r;r++){n=this[r];while(n&&n.ownerDocument&&n!==t&&11!==n.nodeType){if(a?a.index(n)>-1:b.find.matchesSelector(n,e)){o.push(n);break}n=n.parentNode}}return this.pushStack(o.length>1?b.unique(o):o)},index:function(e){return e?"string"==typeof e?b.inArray(this[0],b(e)):b.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?b(e,t):b.makeArray(e&&e.nodeType?[e]:e),r=b.merge(this.get(),n);return this.pushStack(b.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),b.fn.andSelf=b.fn.addBack;function pt(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}b.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(e,t,n){return b.dir(e,"parentNode",n)},next:function(e){return pt(e,"nextSibling")},prev:function(e){return pt(e,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(e,t,n){return b.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return b.dir(e,"previousSibling",n)},siblings:function(e){return b.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.merge([],e.childNodes)}},function(e,t){b.fn[e]=function(n,r){var i=b.map(this,t,n);return at.test(e)||(r=n),r&&"string"==typeof r&&(i=b.filter(r,i)),i=this.length>1&&!ct[e]?b.unique(i):i,this.length>1&&st.test(e)&&(i=i.reverse()),this.pushStack(i)}}),b.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),1===t.length?b.find.matchesSelector(t[0],e)?[t[0]]:[]:b.find.matches(e,t)},dir:function(e,n,r){var i=[],o=e[n];while(o&&9!==o.nodeType&&(r===t||1!==o.nodeType||!b(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(t=t||0,b.isFunction(t))return b.grep(e,function(e,r){var i=!!t.call(e,r,e);return i===n});if(t.nodeType)return b.grep(e,function(e){return e===t===n});if("string"==typeof t){var r=b.grep(e,function(e){return 1===e.nodeType});if(ut.test(t))return b.filter(t,r,!n);t=b.filter(t,r)}return b.grep(e,function(e){return b.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,Nt=/^(?:checkbox|radio)$/i,Ct=/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:b.support.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},jt=dt(o),Dt=jt.appendChild(o.createElement("div"));At.optgroup=At.option,At.tbody=At.tfoot=At.colgroup=At.caption=At.thead,At.th=At.td,b.fn.extend({text:function(e){return b.access(this,function(e){return e===t?b.text(this):this.empty().append((this[0]&&this[0].ownerDocument||o).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(b.isFunction(e))return this.each(function(t){b(this).wrapAll(e.call(this,t))});if(this[0]){var t=b(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 b.isFunction(e)?this.each(function(t){b(this).wrapInner(e.call(this,t))}):this.each(function(){var t=b(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=b.isFunction(e);return this.each(function(n){b(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){b.nodeName(this,"body")||b(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&this.insertBefore(e,this.firstChild)})},before:function(){return this.domManip(arguments,!1,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,!1,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){var n,r=0;for(;null!=(n=this[r]);r++)(!e||b.filter(e,[n]).length>0)&&(t||1!==n.nodeType||b.cleanData(Ot(n)),n.parentNode&&(t&&b.contains(n.ownerDocument,n)&&Mt(Ot(n,"script")),n.parentNode.removeChild(n)));return this},empty:function(){var e,t=0;for(;null!=(e=this[t]);t++){1===e.nodeType&&b.cleanData(Ot(e,!1));while(e.firstChild)e.removeChild(e.firstChild);e.options&&b.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 b.clone(this,e,t)})},html:function(e){return b.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)||!b.support.htmlSerialize&&mt.test(e)||!b.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&&(b.cleanData(Ot(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(e){var t=b.isFunction(e);return t||"string"==typeof e||(e=b(e).not(this).detach()),this.domManip([e],!0,function(e){var t=this.nextSibling,n=this.parentNode;n&&(b(this).remove(),n.insertBefore(e,t))})},detach:function(e){return this.remove(e,!0)},domManip:function(e,n,r){e=f.apply([],e);var i,o,a,s,u,l,c=0,p=this.length,d=this,h=p-1,g=e[0],m=b.isFunction(g);if(m||!(1>=p||"string"!=typeof g||b.support.checkClone)&&Ct.test(g))return this.each(function(i){var o=d.eq(i);m&&(e[0]=g.call(this,i,n?o.html():t)),o.domManip(e,n,r)});if(p&&(l=b.buildFragment(e,this[0].ownerDocument,!1,this),i=l.firstChild,1===l.childNodes.length&&(l=i),i)){for(n=n&&b.nodeName(i,"tr"),s=b.map(Ot(l,"script"),Ht),a=s.length;p>c;c++)o=l,c!==h&&(o=b.clone(o,!0,!0),a&&b.merge(s,Ot(o,"script"))),r.call(n&&b.nodeName(this[c],"table")?Lt(this[c],"tbody"):this[c],o,c);if(a)for(u=s[s.length-1].ownerDocument,b.map(s,qt),c=0;a>c;c++)o=s[c],kt.test(o.type||"")&&!b._data(o,"globalEval")&&b.contains(u,o)&&(o.src?b.ajax({url:o.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):b.globalEval((o.text||o.textContent||o.innerHTML||"").replace(St,"")));l=i=null}return this}});function Lt(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function Ht(e){var t=e.getAttributeNode("type");return e.type=(t&&t.specified)+"/"+e.type,e}function qt(e){var t=Et.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function Mt(e,t){var n,r=0;for(;null!=(n=e[r]);r++)b._data(n,"globalEval",!t||b._data(t[r],"globalEval"))}function _t(e,t){if(1===t.nodeType&&b.hasData(e)){var n,r,i,o=b._data(e),a=b._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++)b.event.add(t,n,s[n][r])}a.data&&(a.data=b.extend({},a.data))}}function Ft(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!b.support.noCloneEvent&&t[b.expando]){i=b._data(t);for(r in i.events)b.removeEvent(t,r,i.handle);t.removeAttribute(b.expando)}"script"===n&&t.text!==e.text?(Ht(t).text=e.text,qt(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),b.support.html5Clone&&e.innerHTML&&!b.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Nt.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)}}b.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){b.fn[e]=function(e){var n,r=0,i=[],o=b(e),a=o.length-1;for(;a>=r;r++)n=r===a?this:this.clone(!0),b(o[r])[t](n),d.apply(i,n.get());return this.pushStack(i)}});function Ot(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||b.nodeName(o,n)?s.push(o):b.merge(s,Ot(o,n));return n===t||n&&b.nodeName(e,n)?b.merge([e],s):s}function Bt(e){Nt.test(e.type)&&(e.defaultChecked=e.checked)}b.extend({clone:function(e,t,n){var r,i,o,a,s,u=b.contains(e.ownerDocument,e);if(b.support.html5Clone||b.isXMLDoc(e)||!mt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(Dt.innerHTML=e.outerHTML,Dt.removeChild(o=Dt.firstChild)),!(b.support.noCloneEvent&&b.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||b.isXMLDoc(e)))for(r=Ot(o),s=Ot(e),a=0;null!=(i=s[a]);++a)r[a]&&Ft(i,r[a]);if(t)if(n)for(s=s||Ot(e),r=r||Ot(o),a=0;null!=(i=s[a]);a++)_t(i,r[a]);else _t(e,o);return r=Ot(o,"script"),r.length>0&&Mt(r,!u&&Ot(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){var i,o,a,s,u,l,c,p=e.length,f=dt(t),d=[],h=0;for(;p>h;h++)if(o=e[h],o||0===o)if("object"===b.type(o))b.merge(d,o.nodeType?[o]:o);else if(wt.test(o)){s=s||f.appendChild(t.createElement("div")),u=(bt.exec(o)||["",""])[1].toLowerCase(),c=At[u]||At._default,s.innerHTML=c[1]+o.replace(vt,"<$1></$2>")+c[2],i=c[0];while(i--)s=s.lastChild;if(!b.support.leadingWhitespace&&yt.test(o)&&d.push(t.createTextNode(yt.exec(o)[0])),!b.support.tbody){o="table"!==u||xt.test(o)?"<table>"!==c[1]||xt.test(o)?0:s:s.firstChild,i=o&&o.childNodes.length;while(i--)b.nodeName(l=o.childNodes[i],"tbody")&&!l.childNodes.length&&o.removeChild(l)
No newline at end of file
5 }b.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),b.support.appendChecked||b.grep(Ot(d,"input"),Bt),h=0;while(o=d[h++])if((!r||-1===b.inArray(o,r))&&(a=b.contains(o.ownerDocument,o),s=Ot(f.appendChild(o),"script"),a&&Mt(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,u=b.expando,l=b.cache,p=b.support.deleteExpando,f=b.event.special;for(;null!=(n=e[s]);s++)if((t||b.acceptData(n))&&(o=n[u],a=o&&l[o])){if(a.events)for(r in a.events)f[r]?b.event.remove(n,r):b.removeEvent(n,r,a.handle);l[o]&&(delete l[o],p?delete n[u]:typeof n.removeAttribute!==i?n.removeAttribute(u):n[u]=null,c.push(o))}}});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("^("+x+")(.*)$","i"),Yt=RegExp("^("+x+")(?!px)[a-z%]+$","i"),Jt=RegExp("^([+-])=("+x+")","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"===b.css(e,"display")||!b.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]=b._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=b._data(r,"olddisplay",un(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&b._data(r,"olddisplay",i?n:b.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}b.fn.extend({css:function(e,n){return b.access(this,function(e,n,r){var i,o,a={},s=0;if(b.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=b.css(e,n[s],!1,o);return a}return r!==t?b.style(e,n,r):b.css(e,n)},e,n,arguments.length>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},toggle:function(e){var t="boolean"==typeof e;return this.each(function(){(t?e:nn(this))?b(this).show():b(this).hide()})}}),b.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,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":b.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,u=b.camelCase(n),l=e.style;if(n=b.cssProps[u]||(b.cssProps[u]=tn(l,u)),s=b.cssHooks[n]||b.cssHooks[u],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:l[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(b.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||b.cssNumber[u]||(r+="px"),b.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(l[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{l[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,u=b.camelCase(n);return n=b.cssProps[u]||(b.cssProps[u]=tn(e.style,u)),s=b.cssHooks[n]||b.cssHooks[u],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||b.isNumeric(o)?o||0:a):a},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}}),e.getComputedStyle?(Rt=function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),u=s?s.getPropertyValue(n)||s[n]:t,l=e.style;return s&&(""!==u||b.contains(e.ownerDocument,e)||(u=b.style(e,n)),Yt.test(u)&&Ut.test(n)&&(i=l.width,o=l.minWidth,a=l.maxWidth,l.minWidth=l.maxWidth=l.width=u,u=s.width,l.width=i,l.minWidth=o,l.maxWidth=a)),u}):o.documentElement.currentStyle&&(Rt=function(e){return e.currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),u=s?s[n]:t,l=e.style;return null==u&&l&&l[n]&&(u=l[n]),Yt.test(u)&&!zt.test(n)&&(i=l.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),l.left="fontSize"===n?"1em":u,u=l.pixelLeft+"px",l.left=i,a&&(o.left=a)),""===u?"auto":u});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+=b.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=b.css(e,"padding"+Zt[o],!0,i)),"margin"!==n&&(a-=b.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=b.css(e,"padding"+Zt[o],!0,i),"padding"!==n&&(a+=b.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=b.support.boxSizing&&"border-box"===b.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&&(b.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+an(e,t,n||(a?"border":"content"),r,o)+"px"}function un(e){var t=o,n=Gt[e];return n||(n=ln(e,t),"none"!==n&&n||(Pt=(Pt||b("<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=ln(e,t),Pt.detach()),Gt[e]=n),n}function ln(e,t){var n=b(t.createElement(e)).appendTo(t.body),r=b.css(n[0],"display");return n.remove(),r}b.each(["height","width"],function(e,n){b.cssHooks[n]={get:function(e,r,i){return r?0===e.offsetWidth&&Xt.test(b.css(e,"display"))?b.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,b.support.boxSizing&&"border-box"===b.css(e,"boxSizing",!1,i),i):0)}}}),b.support.opacity||(b.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=b.isNumeric(t)?"alpha(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""===b.trim(o.replace($t,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""===t||r&&!r.filter)||(n.filter=$t.test(o)?o.replace($t,i):o+" "+i)}}),b(function(){b.support.reliableMarginRight||(b.cssHooks.marginRight={get:function(e,n){return n?b.swap(e,{display:"inline-block"},Wt,[e,"marginRight"]):t}}),!b.support.pixelPosition&&b.fn.position&&b.each(["top","left"],function(e,n){b.cssHooks[n]={get:function(e,r){return r?(r=Wt(e,n),Yt.test(r)?b(e).position()[n]+"px":r):t}}})}),b.expr&&b.expr.filters&&(b.expr.filters.hidden=function(e){return 0>=e.offsetWidth&&0>=e.offsetHeight||!b.support.reliableHiddenOffsets&&"none"===(e.style&&e.style.display||b.css(e,"display"))},b.expr.filters.visible=function(e){return!b.expr.filters.hidden(e)}),b.each({margin:"",padding:"",border:"Width"},function(e,t){b.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)||(b.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;b.fn.extend({serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=b.prop(this,"elements");return e?b.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!b(this).is(":disabled")&&hn.test(this.nodeName)&&!dn.test(e)&&(this.checked||!Nt.test(e))}).map(function(e,t){var n=b(this).val();return null==n?null:b.isArray(n)?b.map(n,function(e){return{name:t.name,value:e.replace(fn,"\r\n")}}):{name:t.name,value:n.replace(fn,"\r\n")}}).get()}}),b.param=function(e,n){var r,i=[],o=function(e,t){t=b.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(n===t&&(n=b.ajaxSettings&&b.ajaxSettings.traditional),b.isArray(e)||e.jquery&&!b.isPlainObject(e))b.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(b.isArray(t))b.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"!==b.type(t))r(e,t);else for(i in t)gn(e+"["+i+"]",t[i],n,r)}b.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){b.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),b.fn.hover=function(e,t){return this.mouseenter(e).mouseleave(t||e)};var mn,yn,vn=b.now(),bn=/\?/,xn=/#.*$/,wn=/([?&])_=[^&]*/,Tn=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Nn=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Cn=/^(?:GET|HEAD)$/,kn=/^\/\//,En=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Sn=b.fn.load,An={},jn={},Dn="*/".concat("*");try{yn=a.href}catch(Ln){yn=o.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(w)||[];if(b.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(u){var l;return o[u]=!0,b.each(e[u]||[],function(e,u){var c=u(n,r,i);return"string"!=typeof c||a||o[c]?a?!(l=c):t:(n.dataTypes.unshift(c),s(c),!1)}),l}return s(n.dataTypes[0])||!o["*"]&&s("*")}function Mn(e,n){var r,i,o=b.ajaxSettings.flatOptions||{};for(i in n)n[i]!==t&&((o[i]?e:r||(r={}))[i]=n[i]);return r&&b.extend(!0,e,r),e}b.fn.load=function(e,n,r){if("string"!=typeof e&&Sn)return Sn.apply(this,arguments);var i,o,a,s=this,u=e.indexOf(" ");return u>=0&&(i=e.slice(u,e.length),e=e.slice(0,u)),b.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(a="POST"),s.length>0&&b.ajax({url:e,type:a,dataType:"html",data:n}).done(function(e){o=arguments,s.html(i?b("<div>").append(b.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){s.each(r,o||[e.responseText,t,e])}),this},b.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){b.fn[t]=function(e){return this.on(t,e)}}),b.each(["get","post"],function(e,n){b[n]=function(e,r,i,o){return b.isFunction(r)&&(o=o||i,i=r,r=t),b.ajax({url:e,type:n,dataType:o,data:r,success:i})}}),b.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:yn,type:"GET",isLocal:Nn.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"},converters:{"* text":e.String,"text html":!0,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Mn(Mn(e,b.ajaxSettings),t):Mn(b.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,u,l,c,p=b.ajaxSetup({},n),f=p.context||p,d=p.context&&(f.nodeType||f.jquery)?b(f):b.event,h=b.Deferred(),g=b.Callbacks("once memory"),m=p.statusCode||{},y={},v={},x=0,T="canceled",N={readyState:0,getResponseHeader:function(e){var t;if(2===x){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===x?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return x||(e=v[n]=v[n]||e,y[e]=t),this},overrideMimeType:function(e){return x||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>x)for(t in e)m[t]=[m[t],e[t]];else N.always(e[N.status]);return this},abort:function(e){var t=e||T;return l&&l.abort(t),k(0,t),this}};if(h.promise(N).complete=g.add,N.success=N.done,N.error=N.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=b.trim(p.dataType||"*").toLowerCase().match(w)||[""],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=b.param(p.data,p.traditional)),qn(An,p,n,N),2===x)return N;u=p.global,u&&0===b.active++&&b.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!Cn.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&&(b.lastModified[o]&&N.setRequestHeader("If-Modified-Since",b.lastModified[o]),b.etag[o]&&N.setRequestHeader("If-None-Match",b.etag[o])),(p.data&&p.hasContent&&p.contentType!==!1||n.contentType)&&N.setRequestHeader("Content-Type",p.contentType),N.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)N.setRequestHeader(i,p.headers[i]);if(p.beforeSend&&(p.beforeSend.call(f,N,p)===!1||2===x))return N.abort();T="abort";for(i in{success:1,error:1,complete:1})N[i](p[i]);if(l=qn(jn,p,n,N)){N.readyState=1,u&&d.trigger("ajaxSend",[N,p]),p.async&&p.timeout>0&&(s=setTimeout(function(){N.abort("timeout")},p.timeout));try{x=1,l.send(y,k)}catch(C){if(!(2>x))throw C;k(-1,C)}}else k(-1,"No Transport");function k(e,n,r,i){var c,y,v,w,T,C=n;2!==x&&(x=2,s&&clearTimeout(s),l=t,a=i||"",N.readyState=e>0?4:0,r&&(w=_n(p,N,r)),e>=200&&300>e||304===e?(p.ifModified&&(T=N.getResponseHeader("Last-Modified"),T&&(b.lastModified[o]=T),T=N.getResponseHeader("etag"),T&&(b.etag[o]=T)),204===e?(c=!0,C="nocontent"):304===e?(c=!0,C="notmodified"):(c=Fn(p,w),C=c.state,y=c.data,v=c.error,c=!v)):(v=C,(e||!C)&&(C="error",0>e&&(e=0))),N.status=e,N.statusText=(n||C)+"",c?h.resolveWith(f,[y,C,N]):h.rejectWith(f,[N,C,v]),N.statusCode(m),m=t,u&&d.trigger(c?"ajaxSuccess":"ajaxError",[N,p,c?y:v]),g.fireWith(f,[N,C]),u&&(d.trigger("ajaxComplete",[N,p]),--b.active||b.event.trigger("ajaxStop")))}return N},getScript:function(e,n){return b.get(e,t,n,"script")},getJSON:function(e,t,n){return b.get(e,t,n,"json")}});function _n(e,n,r){var i,o,a,s,u=e.contents,l=e.dataTypes,c=e.responseFields;for(s in c)s in r&&(n[c[s]]=r[s]);while("*"===l[0])l.shift(),o===t&&(o=e.mimeType||n.getResponseHeader("Content-Type"));if(o)for(s in u)if(u[s]&&u[s].test(o)){l.unshift(s);break}if(l[0]in r)a=l[0];else{for(s in r){if(!l[0]||e.converters[s+" "+l[0]]){a=s;break}i||(i=s)}a=a||i}return a?(a!==l[0]&&l.unshift(a),r[a]):t}function Fn(e,t){var n,r,i,o,a={},s=0,u=e.dataTypes.slice(),l=u[0];if(e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u[1])for(i in e.converters)a[i.toLowerCase()]=e.converters[i];for(;r=u[++s];)if("*"!==r){if("*"!==l&&l!==r){if(i=a[l+" "+r]||a["* "+r],!i)for(n in a)if(o=n.split(" "),o[1]===r&&(i=a[l+" "+o[0]]||a["* "+o[0]])){i===!0?i=a[n]:a[n]!==!0&&(r=o[0],u.splice(s--,0,r));break}if(i!==!0)if(i&&e["throws"])t=i(t);else try{t=i(t)}catch(c){return{state:"parsererror",error:i?c:"No conversion from "+l+" to "+r}}}l=r}return{state:"success",data:t}}b.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return b.globalEval(e),e}}}),b.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),b.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=o.head||b("head")[0]||o.documentElement;return{send:function(t,i){n=o.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 On=[],Bn=/(=)\?(?=&|$)|\?\?/;b.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=On.pop()||b.expando+"_"+vn++;return this[e]=!0,e}}),b.ajaxPrefilter("json jsonp",function(n,r,i){var o,a,s,u=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 u||"jsonp"===n.dataTypes[0]?(o=n.jsonpCallback=b.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,u?n[u]=n[u].replace(Bn,"$1"+o):n.jsonp!==!1&&(n.url+=(bn.test(n.url)?"&":"?")+n.jsonp+"="+o),n.converters["script json"]=function(){return s||b.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,On.push(o)),s&&b.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){}}b.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&In()||zn()}:In,Rn=b.ajaxSettings.xhr(),b.support.cors=!!Rn&&"withCredentials"in Rn,Rn=b.support.ajax=!!Rn,Rn&&b.ajaxTransport(function(n){if(!n.crossDomain||b.support.cors){var r;return{send:function(i,o){var a,s,u=n.xhr();if(n.username?u.open(n.type,n.url,n.async,n.username,n.password):u.open(n.type,n.url,n.async),n.xhrFields)for(s in n.xhrFields)u[s]=n.xhrFields[s];n.mimeType&&u.overrideMimeType&&u.overrideMimeType(n.mimeType),n.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");try{for(s in i)u.setRequestHeader(s,i[s])}catch(l){}u.send(n.hasContent&&n.data||null),r=function(e,i){var s,l,c,p;try{if(r&&(i||4===u.readyState))if(r=t,a&&(u.onreadystatechange=b.noop,$n&&delete Pn[a]),i)4!==u.readyState&&u.abort();else{p={},s=u.status,l=u.getAllResponseHeaders(),"string"==typeof u.responseText&&(p.text=u.responseText);try{c=u.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,l)},n.async?4===u.readyState?setTimeout(r):(a=++Wn,$n&&(Pn||(Pn={},b(e).unload($n)),Pn[a]=r),u.onreadystatechange=r):r()},abort:function(){r&&r(t,!0)}}}});var Xn,Un,Vn=/^(?:toggle|show|hide)$/,Yn=RegExp("^(?:([+-])=|)("+x+")([a-z%]*)$","i"),Jn=/queueHooks$/,Gn=[nr],Qn={"*":[function(e,t){var n,r,i=this.createTween(e,t),o=Yn.exec(t),a=i.cur(),s=+a||0,u=1,l=20;if(o){if(n=+o[2],r=o[3]||(b.cssNumber[e]?"":"px"),"px"!==r&&s){s=b.css(i.elem,e,!0)||n||1;do u=u||".5",s/=u,b.style(i.elem,e,s+r);while(u!==(u=i.cur()/a)&&1!==u&&--l)}i.unit=r,i.start=s,i.end=o[1]?s+(o[1]+1)*n:n}return i}]};function Kn(){return setTimeout(function(){Xn=t}),Xn=b.now()}function Zn(e,t){b.each(t,function(t,n){var r=(Qn[t]||[]).concat(Qn["*"]),i=0,o=r.length;for(;o>i;i++)if(r[i].call(e,t,n))return})}function er(e,t,n){var r,i,o=0,a=Gn.length,s=b.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;var t=Xn||Kn(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,o=1-r,a=0,u=l.tweens.length;for(;u>a;a++)l.tweens[a].run(o);return s.notifyWith(e,[l,o,n]),1>o&&u?n:(s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:b.extend({},t),opts:b.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Xn||Kn(),duration:n.duration,tweens:[],createTween:function(t,n){var r=b.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)l.tweens[n].run(1);return t?s.resolveWith(e,[l,t]):s.rejectWith(e,[l,t]),this}}),c=l.props;for(tr(c,l.opts.specialEasing);a>o;o++)if(r=Gn[o].call(l,e,c,l.opts))return r;return Zn(l,c),b.isFunction(l.opts.start)&&l.opts.start.call(e,l),b.fx.timer(b.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}function tr(e,t){var n,r,i,o,a;for(i in e)if(r=b.camelCase(i),o=t[r],n=e[i],b.isArray(n)&&(o=n[1],n=e[i]=n[0]),i!==r&&(e[r]=n,delete e[i]),a=b.cssHooks[r],a&&"expand"in a){n=a.expand(n),delete e[r];for(i in n)i in e||(e[i]=n[i],t[i]=o)}else t[r]=o}b.Animation=b.extend(er,{tweener:function(e,t){b.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,u,l,c,p,f=this,d=e.style,h={},g=[],m=e.nodeType&&nn(e);n.queue||(c=b._queueHooks(e,"fx"),null==c.unqueued&&(c.unqueued=0,p=c.empty.fire,c.empty.fire=function(){c.unqueued||p()}),c.unqueued++,f.always(function(){f.always(function(){c.unqueued--,b.queue(e,"fx").length||c.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[d.overflow,d.overflowX,d.overflowY],"inline"===b.css(e,"display")&&"none"===b.css(e,"float")&&(b.support.inlineBlockNeedsLayout&&"inline"!==un(e.nodeName)?d.zoom=1:d.display="inline-block")),n.overflow&&(d.overflow="hidden",b.support.shrinkWrapBlocks||f.always(function(){d.overflow=n.overflow[0],d.overflowX=n.overflow[1],d.overflowY=n.overflow[2]}));for(i in t)if(a=t[i],Vn.exec(a)){if(delete t[i],u=u||"toggle"===a,a===(m?"hide":"show"))continue;g.push(i)}if(o=g.length){s=b._data(e,"fxshow")||b._data(e,"fxshow",{}),"hidden"in s&&(m=s.hidden),u&&(s.hidden=!m),m?b(e).show():f.done(function(){b(e).hide()}),f.done(function(){var t;b._removeData(e,"fxshow");for(t in h)b.style(e,t,h[t])});for(i=0;o>i;i++)r=g[i],l=f.createTween(r,m?s[r]:0),h[r]=s[r]||b.style(e,r),r in s||(s[r]=l.start,m&&(l.end=l.start,l.start="width"===r||"height"===r?1:0))}}function rr(e,t,n,r,i){return new rr.prototype.init(e,t,n,r,i)}b.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||(b.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?b.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=b.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){b.fx.step[e.prop]?b.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[b.cssProps[e.prop]]||b.cssHooks[e.prop])?b.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)}},b.each(["toggle","show","hide"],function(e,t){var n=b.fn[t];b.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(ir(t,!0),e,r,i)}}),b.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=b.isEmptyObject(e),o=b.speed(t,n,r),a=function(){var t=er(this,b.extend({},e),o);a.finish=function(){t.stop(!0)},(i||b._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=b.timers,a=b._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)&&b.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=b._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=b.timers,a=r?r.length:0;for(n.finish=!0,b.queue(this,e,[]),i&&i.cur&&i.cur.finish&&i.cur.finish.call(this),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}b.each({slideDown:ir("show"),slideUp:ir("hide"),slideToggle:ir("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){b.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),b.speed=function(e,t,n){var r=e&&"object"==typeof e?b.extend({},e):{complete:n||!n&&t||b.isFunction(e)&&e,duration:e,easing:n&&t||t&&!b.isFunction(t)&&t};return r.duration=b.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in b.fx.speeds?b.fx.speeds[r.duration]:b.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){b.isFunction(r.old)&&r.old.call(this),r.queue&&b.dequeue(this,r.queue)},r},b.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},b.timers=[],b.fx=rr.prototype.init,b.fx.tick=function(){var e,n=b.timers,r=0;for(Xn=b.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||b.fx.stop(),Xn=t},b.fx.timer=function(e){e()&&b.timers.push(e)&&b.fx.start()},b.fx.interval=13,b.fx.start=function(){Un||(Un=setInterval(b.fx.tick,b.fx.interval))},b.fx.stop=function(){clearInterval(Un),Un=null},b.fx.speeds={slow:600,fast:200,_default:400},b.fx.step={},b.expr&&b.expr.filters&&(b.expr.filters.animated=function(e){return b.grep(b.timers,function(t){return e===t.elem}).length}),b.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){b.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,b.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},b.offset={setOffset:function(e,t,n){var r=b.css(e,"position");"static"===r&&(e.style.position="relative");var i=b(e),o=i.offset(),a=b.css(e,"top"),s=b.css(e,"left"),u=("absolute"===r||"fixed"===r)&&b.inArray("auto",[a,s])>-1,l={},c={},p,f;u?(c=i.position(),p=c.top,f=c.left):(p=parseFloat(a)||0,f=parseFloat(s)||0),b.isFunction(t)&&(t=t.call(e,n,o)),null!=t.top&&(l.top=t.top-o.top+p),null!=t.left&&(l.left=t.left-o.left+f),"using"in t?t.using.call(e,l):i.css(l)}},b.fn.extend({position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===b.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),b.nodeName(e[0],"html")||(n=e.offset()),n.top+=b.css(e[0],"borderTopWidth",!0),n.left+=b.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-b.css(r,"marginTop",!0),left:t.left-n.left-b.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||o.documentElement;while(e&&!b.nodeName(e,"html")&&"static"===b.css(e,"position"))e=e.offsetParent;return e||o.documentElement})}}),b.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);b.fn[e]=function(i){return b.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?b(a).scrollLeft():o,r?o:b(a).scrollTop()):e[i]=o,t)},e,i,arguments.length,null)}});function or(e){return b.isWindow(e)?e:9===e.nodeType?e.defaultView||e.parentWindow:!1}b.each({Height:"height",Width:"width"},function(e,n){b.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){b.fn[i]=function(i,o){var a=arguments.length&&(r||"boolean"!=typeof i),s=r||(i===!0||o===!0?"margin":"border");return b.access(this,function(n,r,i){var o;return b.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?b.css(n,r,s):b.style(n,r,i,s)},n,a?i:t,a,null)}})}),e.jQuery=e.$=b,"function"==typeof define&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return b})})(window); No newline at end of file
@@ -0,0 +1,6
1 /*! jQuery v2.0.0 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
No newline at end of file
2 //@ sourceMappingURL=jquery.min.map
No newline at end of file
3 */
No newline at end of file
4 (function(e,undefined){var t,n,r=typeof undefined,i=e.location,o=e.document,s=o.documentElement,a=e.jQuery,u=e.$,l={},c=[],f="2.0.0",p=c.concat,h=c.push,d=c.slice,g=c.indexOf,m=l.toString,y=l.hasOwnProperty,v=f.trim,x=function(e,n){return new x.fn.init(e,n,t)},b=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,w=/\S+/g,T=/^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/,C=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,k=/^-ms-/,N=/-([\da-z])/gi,E=function(e,t){return t.toUpperCase()},S=function(){o.removeEventListener("DOMContentLoaded",S,!1),e.removeEventListener("load",S,!1),x.ready()};x.fn=x.prototype={jquery:f,constructor:x,init:function(e,t,n){var r,i;if(!e)return this;if("string"==typeof e){if(r="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:T.exec(e),!r||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof x?t[0]:t,x.merge(this,x.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:o,!0)),C.test(r[1])&&x.isPlainObject(t))for(r in t)x.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return i=o.getElementById(r[2]),i&&i.parentNode&&(this.length=1,this[0]=i),this.context=o,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):x.isFunction(e)?n.ready(e):(e.selector!==undefined&&(this.selector=e.selector,this.context=e.context),x.makeArray(e,this))},selector:"",length:0,toArray:function(){return d.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(d.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,t,n,r,i,o,s=arguments[0]||{},a=1,u=arguments.length,l=!1;for("boolean"==typeof s&&(l=s,s=arguments[1]||{},a=2),"object"==typeof s||x.isFunction(s)||(s={}),u===a&&(s=this,--a);u>a;a++)if(null!=(e=arguments[a]))for(t in e)n=s[t],r=e[t],s!==r&&(l&&r&&(x.isPlainObject(r)||(i=x.isArray(r)))?(i?(i=!1,o=n&&x.isArray(n)?n:[]):o=n&&x.isPlainObject(n)?n:{},s[t]=x.extend(l,o,r)):r!==undefined&&(s[t]=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=a),x},isReady:!1,readyWait:1,holdReady:function(e){e?x.readyWait++:x.ready(!0)},ready:function(e){(e===!0?--x.readyWait:x.isReady)||(x.isReady=!0,e!==!0&&--x.readyWait>0||(n.resolveWith(o,[x]),x.fn.trigger&&x(o).trigger("ready").off("ready")))},isFunction:function(e){return"function"===x.type(e)},isArray:Array.isArray,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?l[m.call(e)]||"object":typeof e},isPlainObject:function(e){if("object"!==x.type(e)||e.nodeType||x.isWindow(e))return!1;try{if(e.constructor&&!y.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},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||o;var r=C.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:JSON.parse,parseXML:function(e){var t,n;if(!e||"string"!=typeof e)return null;try{n=new DOMParser,t=n.parseFromString(e,"text/xml")}catch(r){t=undefined}return(!t||t.getElementsByTagName("parsererror").length)&&x.error("Invalid XML: "+e),t},noop:function(){},globalEval:function(e){var t,n=eval;e=x.trim(e),e&&(1===e.indexOf("use strict")?(t=o.createElement("script"),t.text=e,o.head.appendChild(t).parentNode.removeChild(t)):n(e))},camelCase:function(e){return e.replace(k,"ms-").replace(N,E)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,i=0,o=e.length,s=j(e);if(n){if(s){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(s){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:function(e){return null==e?"":v.call(e)},makeArray:function(e,t){var n=t||[];return null!=e&&(j(Object(e))?x.merge(n,"string"==typeof e?[e]:e):h.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:g.call(t,e,n)},merge:function(e,t){var n=t.length,r=e.length,i=0;if("number"==typeof n)for(;n>i;i++)e[r++]=t[i];else while(t[i]!==undefined)e[r++]=t[i++];return e.length=r,e},grep:function(e,t,n){var r,i=[],o=0,s=e.length;for(n=!!n;s>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,s=j(e),a=[];if(s)for(;o>i;i++)r=t(e[i],i,n),null!=r&&(a[a.length]=r);else for(i in e)r=t(e[i],i,n),null!=r&&(a[a.length]=r);return p.apply([],a)},guid:1,proxy:function(e,t){var n,r,i;return"string"==typeof t&&(n=e[t],t=e,e=n),x.isFunction(e)?(r=d.call(arguments,2),i=function(){return e.apply(t||this,r.concat(d.call(arguments)))},i.guid=e.guid=e.guid||x.guid++,i):undefined},access:function(e,t,n,r,i,o,s){var a=0,u=e.length,l=null==n;if("object"===x.type(n)){i=!0;for(a in n)x.access(e,t,a,n[a],!0,o,s)}else if(r!==undefined&&(i=!0,x.isFunction(r)||(s=!0),l&&(s?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(x(e),n)})),t))for(;u>a;a++)t(e[a],n,s?r:r.call(e[a],a,t(e[a],n)));return i?e:l?t.call(e):u?t(e[0],n):o},now:Date.now,swap:function(e,t,n,r){var i,o,s={};for(o in t)s[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=s[o];return i}}),x.ready.promise=function(t){return n||(n=x.Deferred(),"complete"===o.readyState?setTimeout(x.ready):(o.addEventListener("DOMContentLoaded",S,!1),e.addEventListener("load",S,!1))),n.promise(t)},x.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){l["[object "+t+"]"]=t.toLowerCase()});function j(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)}t=x(o),function(e,undefined){var t,n,r,i,o,s,a,u,l,c,f,p,h,d,g,m,y="sizzle"+-new Date,v=e.document,b={},w=0,T=0,C=ot(),k=ot(),N=ot(),E=!1,S=function(){return 0},j=typeof undefined,D=1<<31,A=[],L=A.pop,q=A.push,H=A.push,O=A.slice,F=A.indexOf||function(e){var t=0,n=this.length;for(;n>t;t++)if(this[t]===e)return t;return-1},P="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",R="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",W=M.replace("w","w#"),$="\\["+R+"*("+M+")"+R+"*(?:([*^$|!~]?=)"+R+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+W+")|)|)"+R+"*\\]",B=":("+M+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+$.replace(3,8)+")*)|.*)\\)|)",I=RegExp("^"+R+"+|((?:^|[^\\\\])(?:\\\\.)*)"+R+"+$","g"),z=RegExp("^"+R+"*,"+R+"*"),_=RegExp("^"+R+"*([>+~]|"+R+")"+R+"*"),X=RegExp(R+"*[+~]"),U=RegExp("="+R+"*([^\\]'\"]*)"+R+"*\\]","g"),Y=RegExp(B),V=RegExp("^"+W+"$"),G={ID:RegExp("^#("+M+")"),CLASS:RegExp("^\\.("+M+")"),TAG:RegExp("^("+M.replace("w","w*")+")"),ATTR:RegExp("^"+$),PSEUDO:RegExp("^"+B),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+R+"*(even|odd|(([+-]|)(\\d*)n|)"+R+"*(?:([+-]|)"+R+"*(\\d+)|))"+R+"*\\)|)","i"),"boolean":RegExp("^(?:"+P+")$","i"),needsContext:RegExp("^"+R+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+R+"*((?:-\\d)?\\d*)"+R+"*\\)|)(?=[^-]|$)","i")},J=/^[^{]+\{\s*\[native \w/,Q=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,K=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,et=/'|\\/g,tt=/\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g,nt=function(e,t){var n="0x"+t-65536;return n!==n?t:0>n?String.fromCharCode(n+65536):String.fromCharCode(55296|n>>10,56320|1023&n)};try{H.apply(A=O.call(v.childNodes),v.childNodes),A[v.childNodes.length].nodeType}catch(rt){H={apply:A.length?function(e,t){q.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function it(e){return J.test(e+"")}function ot(){var e,t=[];return e=function(n,i){return t.push(n+=" ")>r.cacheLength&&delete e[t.shift()],e[n]=i}}function st(e){return e[y]=!0,e}function at(e){var t=c.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ut(e,t,n,r){var i,o,s,a,u,f,d,g,x,w;if((t?t.ownerDocument||t:v)!==c&&l(t),t=t||c,n=n||[],!e||"string"!=typeof e)return n;if(1!==(a=t.nodeType)&&9!==a)return[];if(p&&!r){if(i=Q.exec(e))if(s=i[1]){if(9===a){if(o=t.getElementById(s),!o||!o.parentNode)return n;if(o.id===s)return n.push(o),n}else if(t.ownerDocument&&(o=t.ownerDocument.getElementById(s))&&m(t,o)&&o.id===s)return n.push(o),n}else{if(i[2])return H.apply(n,t.getElementsByTagName(e)),n;if((s=i[3])&&b.getElementsByClassName&&t.getElementsByClassName)return H.apply(n,t.getElementsByClassName(s)),n}if(b.qsa&&(!h||!h.test(e))){if(g=d=y,x=t,w=9===a&&e,1===a&&"object"!==t.nodeName.toLowerCase()){f=gt(e),(d=t.getAttribute("id"))?g=d.replace(et,"\\$&"):t.setAttribute("id",g),g="[id='"+g+"'] ",u=f.length;while(u--)f[u]=g+mt(f[u]);x=X.test(e)&&t.parentNode||t,w=f.join(",")}if(w)try{return H.apply(n,x.querySelectorAll(w)),n}catch(T){}finally{d||t.removeAttribute("id")}}}return kt(e.replace(I,"$1"),t,n,r)}o=ut.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},l=ut.setDocument=function(e){var t=e?e.ownerDocument||e:v;return t!==c&&9===t.nodeType&&t.documentElement?(c=t,f=t.documentElement,p=!o(t),b.getElementsByTagName=at(function(e){return e.appendChild(t.createComment("")),!e.getElementsByTagName("*").length}),b.attributes=at(function(e){return e.className="i",!e.getAttribute("className")}),b.getElementsByClassName=at(function(e){return e.innerHTML="<div class='a'></div><div class='a i'></div>",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),b.sortDetached=at(function(e){return 1&e.compareDocumentPosition(c.createElement("div"))}),b.getById=at(function(e){return f.appendChild(e).id=y,!t.getElementsByName||!t.getElementsByName(y).length}),b.getById?(r.find.ID=function(e,t){if(typeof t.getElementById!==j&&p){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},r.filter.ID=function(e){var t=e.replace(tt,nt);return function(e){return e.getAttribute("id")===t}}):(r.find.ID=function(e,t){if(typeof t.getElementById!==j&&p){var n=t.getElementById(e);return n?n.id===e||typeof n.getAttributeNode!==j&&n.getAttributeNode("id").value===e?[n]:undefined:[]}},r.filter.ID=function(e){var t=e.replace(tt,nt);return function(e){var n=typeof e.getAttributeNode!==j&&e.getAttributeNode("id");return n&&n.value===t}}),r.find.TAG=b.getElementsByTagName?function(e,t){return typeof t.getElementsByTagName!==j?t.getElementsByTagName(e):undefined}: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},r.find.CLASS=b.getElementsByClassName&&function(e,t){return typeof t.getElementsByClassName!==j&&p?t.getElementsByClassName(e):undefined},d=[],h=[],(b.qsa=it(t.querySelectorAll))&&(at(function(e){e.innerHTML="<select><option selected=''></option></select>",e.querySelectorAll("[selected]").length||h.push("\\["+R+"*(?:value|"+P+")"),e.querySelectorAll(":checked").length||h.push(":checked")}),at(function(e){var t=c.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t",""),e.querySelectorAll("[t^='']").length&&h.push("[*^$]="+R+"*(?:''|\"\")"),e.querySelectorAll(":enabled").length||h.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),h.push(",.*:")})),(b.matchesSelector=it(g=f.webkitMatchesSelector||f.mozMatchesSelector||f.oMatchesSelector||f.msMatchesSelector))&&at(function(e){b.disconnectedMatch=g.call(e,"div"),g.call(e,"[s!='']:x"),d.push("!=",B)}),h=h.length&&RegExp(h.join("|")),d=d.length&&RegExp(d.join("|")),m=it(f.contains)||f.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},S=f.compareDocumentPosition?function(e,n){if(e===n)return E=!0,0;var r=n.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(n);return r?1&r||!b.sortDetached&&n.compareDocumentPosition(e)===r?e===t||m(v,e)?-1:n===t||m(v,n)?1:u?F.call(u,e)-F.call(u,n):0:4&r?-1:1:e.compareDocumentPosition?-1:1}:function(e,n){var r,i=0,o=e.parentNode,s=n.parentNode,a=[e],l=[n];if(e===n)return E=!0,0;if(!o||!s)return e===t?-1:n===t?1:o?-1:s?1:u?F.call(u,e)-F.call(u,n):0;if(o===s)return lt(e,n);r=e;while(r=r.parentNode)a.unshift(r);r=n;while(r=r.parentNode)l.unshift(r);while(a[i]===l[i])i++;return i?lt(a[i],l[i]):a[i]===v?-1:l[i]===v?1:0},c):c},ut.matches=function(e,t){return ut(e,null,null,t)},ut.matchesSelector=function(e,t){if((e.ownerDocument||e)!==c&&l(e),t=t.replace(U,"='$1']"),!(!b.matchesSelector||!p||d&&d.test(t)||h&&h.test(t)))try{var n=g.call(e,t);if(n||b.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(r){}return ut(t,c,null,[e]).length>0},ut.contains=function(e,t){return(e.ownerDocument||e)!==c&&l(e),m(e,t)},ut.attr=function(e,t){(e.ownerDocument||e)!==c&&l(e);var n=r.attrHandle[t.toLowerCase()],i=n&&n(e,t,!p);return i===undefined?b.attributes||!p?e.getAttribute(t):(i=e.getAttributeNode(t))&&i.specified?i.value:null:i},ut.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},ut.uniqueSort=function(e){var t,n=[],r=0,i=0;if(E=!b.detectDuplicates,u=!b.sortStable&&e.slice(0),e.sort(S),E){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return e};function lt(e,t){var n=t&&e,r=n&&(~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 ct(e,t,n){var r;return n?undefined:(r=e.getAttributeNode(t))&&r.specified?r.value:e[t]===!0?t.toLowerCase():null}function ft(e,t,n){var r;return n?undefined:r=e.getAttribute(t,"type"===t.toLowerCase()?1:2)}function pt(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function ht(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function dt(e){return st(function(t){return t=+t,st(function(n,r){var i,o=e([],n.length,t),s=o.length;while(s--)n[i=o[s]]&&(n[i]=!(r[i]=n[i]))})})}i=ut.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r];r++)n+=i(t);return n},r=ut.selectors={cacheLength:50,createPseudo:st,match:G,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(tt,nt),e[3]=(e[4]||e[5]||"").replace(tt,nt),"~="===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]||ut.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]&&ut.error(e[0]),e},PSEUDO:function(e){var t,n=!e[5]&&e[2];return G.CHILD.test(e[0])?null:(e[4]?e[2]=e[4]:n&&Y.test(n)&&(t=gt(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(tt,nt).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=C[e+" "];return t||(t=RegExp("(^|"+R+")"+e+"("+R+"|$)"))&&C(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=ut.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),s="last"!==e.slice(-4),a="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,p,h,d,g=o!==s?"nextSibling":"previousSibling",m=t.parentNode,v=a&&t.nodeName.toLowerCase(),x=!u&&!a;if(m){if(o){while(g){f=t;while(f=f[g])if(a?f.nodeName.toLowerCase()===v:1===f.nodeType)return!1;d=g="only"===e&&!d&&"nextSibling"}return!0}if(d=[s?m.firstChild:m.lastChild],s&&x){c=m[y]||(m[y]={}),l=c[e]||[],h=l[0]===w&&l[1],p=l[0]===w&&l[2],f=h&&m.childNodes[h];while(f=++h&&f&&f[g]||(p=h=0)||d.pop())if(1===f.nodeType&&++p&&f===t){c[e]=[w,h,p];break}}else if(x&&(l=(t[y]||(t[y]={}))[e])&&l[0]===w)p=l[1];else while(f=++h&&f&&f[g]||(p=h=0)||d.pop())if((a?f.nodeName.toLowerCase()===v:1===f.nodeType)&&++p&&(x&&((f[y]||(f[y]={}))[e]=[w,p]),f===t))break;return p-=i,p===r||0===p%r&&p/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||ut.error("unsupported pseudo: "+e);return i[y]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?st(function(e,n){var r,o=i(e,t),s=o.length;while(s--)r=F.call(e,o[s]),e[r]=!(n[r]=o[s])}):function(e){return i(e,0,n)}):i}},pseudos:{not:st(function(e){var t=[],n=[],r=s(e.replace(I,"$1"));return r[y]?st(function(e,t,n,i){var o,s=r(e,null,i,[]),a=e.length;while(a--)(o=s[a])&&(e[a]=!(t[a]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:st(function(e){return function(t){return ut(e,t).length>0}}),contains:st(function(e){return function(t){return(t.textContent||t.innerText||i(t)).indexOf(e)>-1}}),lang:st(function(e){return V.test(e||"")||ut.error("unsupported lang: "+e),e=e.replace(tt,nt).toLowerCase(),function(t){var n;do if(n=p?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===f},focus:function(e){return e===c.activeElement&&(!c.hasFocus||c.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!r.pseudos.empty(e)},header:function(e){return Z.test(e.nodeName)},input:function(e){return K.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:dt(function(){return[0]}),last:dt(function(e,t){return[t-1]}),eq:dt(function(e,t,n){return[0>n?n+t:n]}),even:dt(function(e,t){var n=0;for(;t>n;n+=2)e.push(n);return e}),odd:dt(function(e,t){var n=1;for(;t>n;n+=2)e.push(n);return e}),lt:dt(function(e,t,n){var r=0>n?n+t:n;for(;--r>=0;)e.push(r);return e}),gt:dt(function(e,t,n){var r=0>n?n+t:n;for(;t>++r;)e.push(r);return e})}};for(t in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[t]=pt(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=ht(t);function gt(e,t){var n,i,o,s,a,u,l,c=k[e+" "];if(c)return t?0:c.slice(0);a=e,u=[],l=r.preFilter;while(a){(!n||(i=z.exec(a)))&&(i&&(a=a.slice(i[0].length)||a),u.push(o=[])),n=!1,(i=_.exec(a))&&(n=i.shift(),o.push({value:n,type:i[0].replace(I," ")}),a=a.slice(n.length));for(s in r.filter)!(i=G[s].exec(a))||l[s]&&!(i=l[s](i))||(n=i.shift(),o.push({value:n,type:s,matches:i}),a=a.slice(n.length));if(!n)break}return t?a.length:a?ut.error(e):k(e,u).slice(0)}function mt(e){var t=0,n=e.length,r="";for(;n>t;t++)r+=e[t].value;return r}function yt(e,t,r){var i=t.dir,o=r&&"parentNode"===i,s=T++;return t.first?function(t,n,r){while(t=t[i])if(1===t.nodeType||o)return e(t,n,r)}:function(t,r,a){var u,l,c,f=w+" "+s;if(a){while(t=t[i])if((1===t.nodeType||o)&&e(t,r,a))return!0}else while(t=t[i])if(1===t.nodeType||o)if(c=t[y]||(t[y]={}),(l=c[i])&&l[0]===f){if((u=l[1])===!0||u===n)return u===!0}else if(l=c[i]=[f],l[1]=e(t,r,a)||n,l[1]===!0)return!0}}function vt(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,s=[],a=0,u=e.length,l=null!=t;for(;u>a;a++)(o=e[a])&&(!n||n(o,r,i))&&(s.push(o),l&&t.push(a));return s}function bt(e,t,n,r,i,o){return r&&!r[y]&&(r=bt(r)),i&&!i[y]&&(i=bt(i,o)),st(function(o,s,a,u){var l,c,f,p=[],h=[],d=s.length,g=o||Ct(t||"*",a.nodeType?[a]:a,[]),m=!e||!o&&t?g:xt(g,p,e,a,u),y=n?i||(o?e:d||r)?[]:s:m;if(n&&n(m,y,a,u),r){l=xt(y,h),r(l,[],a,u),c=l.length;while(c--)(f=l[c])&&(y[h[c]]=!(m[h[c]]=f))}if(o){if(i||e){if(i){l=[],c=y.length;while(c--)(f=y[c])&&l.push(m[c]=f);i(null,y=[],l,u)}c=y.length;while(c--)(f=y[c])&&(l=i?F.call(o,f):p[c])>-1&&(o[l]=!(s[l]=f))}}else y=xt(y===s?y.splice(d,y.length):y),i?i(null,s,y,u):H.apply(s,y)})}function wt(e){var t,n,i,o=e.length,s=r.relative[e[0].type],u=s||r.relative[" "],l=s?1:0,c=yt(function(e){return e===t},u,!0),f=yt(function(e){return F.call(t,e)>-1},u,!0),p=[function(e,n,r){return!s&&(r||n!==a)||((t=n).nodeType?c(e,n,r):f(e,n,r))}];for(;o>l;l++)if(n=r.relative[e[l].type])p=[yt(vt(p),n)];else{if(n=r.filter[e[l].type].apply(null,e[l].matches),n[y]){for(i=++l;o>i;i++)if(r.relative[e[i].type])break;return bt(l>1&&vt(p),l>1&&mt(e.slice(0,l-1)).replace(I,"$1"),n,i>l&&wt(e.slice(l,i)),o>i&&wt(e=e.slice(i)),o>i&&mt(e))}p.push(n)}return vt(p)}function Tt(e,t){var i=0,o=t.length>0,s=e.length>0,u=function(u,l,f,p,h){var d,g,m,y=[],v=0,x="0",b=u&&[],T=null!=h,C=a,k=u||s&&r.find.TAG("*",h&&l.parentNode||l),N=w+=null==C?1:Math.random()||.1;for(T&&(a=l!==c&&l,n=i);null!=(d=k[x]);x++){if(s&&d){g=0;while(m=e[g++])if(m(d,l,f)){p.push(d);break}T&&(w=N,n=++i)}o&&((d=!m&&d)&&v--,u&&b.push(d))}if(v+=x,o&&x!==v){g=0;while(m=t[g++])m(b,y,l,f);if(u){if(v>0)while(x--)b[x]||y[x]||(y[x]=L.call(p));y=xt(y)}H.apply(p,y),T&&!u&&y.length>0&&v+t.length>1&&ut.uniqueSort(p)}return T&&(w=N,a=C),b};return o?st(u):u}s=ut.compile=function(e,t){var n,r=[],i=[],o=N[e+" "];if(!o){t||(t=gt(e)),n=t.length;while(n--)o=wt(t[n]),o[y]?r.push(o):i.push(o);o=N(e,Tt(i,r))}return o};function Ct(e,t,n){var r=0,i=t.length;for(;i>r;r++)ut(e,t[r],n);return n}function kt(e,t,n,i){var o,a,u,l,c,f=gt(e);if(!i&&1===f.length){if(a=f[0]=f[0].slice(0),a.length>2&&"ID"===(u=a[0]).type&&9===t.nodeType&&p&&r.relative[a[1].type]){if(t=(r.find.ID(u.matches[0].replace(tt,nt),t)||[])[0],!t)return n;e=e.slice(a.shift().value.length)}o=G.needsContext.test(e)?0:a.length;while(o--){if(u=a[o],r.relative[l=u.type])break;if((c=r.find[l])&&(i=c(u.matches[0].replace(tt,nt),X.test(a[0].type)&&t.parentNode||t))){if(a.splice(o,1),e=i.length&&mt(a),!e)return H.apply(n,i),n;break}}}return s(e,f)(i,t,!p,n,X.test(e)),n}r.pseudos.nth=r.pseudos.eq;function Nt(){}Nt.prototype=r.filters=r.pseudos,r.setFilters=new Nt,b.sortStable=y.split("").sort(S).join("")===y,l(),[0,0].sort(S),b.detectDuplicates=E,at(function(e){if(e.innerHTML="<a href='#'></a>","#"!==e.firstChild.getAttribute("href")){var t="type|href|height|width".split("|"),n=t.length;while(n--)r.attrHandle[t[n]]=ft}}),at(function(e){if(null!=e.getAttribute("disabled")){var t=P.split("|"),n=t.length;while(n--)r.attrHandle[t[n]]=ct}}),x.find=ut,x.expr=ut.selectors,x.expr[":"]=x.expr.pseudos,x.unique=ut.uniqueSort,x.text=ut.getText,x.isXMLDoc=ut.isXML,x.contains=ut.contains}(e);var D={};function A(e){var t=D[e]={};return x.each(e.match(w)||[],function(e,n){t[n]=!0}),t}x.Callbacks=function(e){e="string"==typeof e?D[e]||A(e):x.extend({},e);var t,n,r,i,o,s,a=[],u=!e.once&&[],l=function(f){for(t=e.memory&&f,n=!0,s=i||0,i=0,o=a.length,r=!0;a&&o>s;s++)if(a[s].apply(f[0],f[1])===!1&&e.stopOnFalse){t=!1;break}r=!1,a&&(u?u.length&&l(u.shift()):t?a=[]:c.disable())},c={add:function(){if(a){var n=a.length;(function s(t){x.each(t,function(t,n){var r=x.type(n);"function"===r?e.unique&&c.has(n)||a.push(n):n&&n.length&&"string"!==r&&s(n)})})(arguments),r?o=a.length:t&&(i=n,l(t))}return this},remove:function(){return a&&x.each(arguments,function(e,t){var n;while((n=x.inArray(t,a,n))>-1)a.splice(n,1),r&&(o>=n&&o--,s>=n&&s--)}),this},has:function(e){return e?x.inArray(e,a)>-1:!(!a||!a.length)},empty:function(){return a=[],o=0,this},disable:function(){return a=u=t=undefined,this},disabled:function(){return!a},lock:function(){return u=undefined,t||c.disable(),this},locked:function(){return!u},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],!a||n&&!u||(r?u.push(t):l(t)),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!n}};return c},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 s=o[0],a=x.isFunction(e[t])&&e[t];i[o[1]](function(){var e=a&&a.apply(this,arguments);e&&x.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[s+"With"](this===r?n.promise():this,a?[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 s=o[2],a=o[3];r[o[1]]=s.add,a&&s.add(function(){n=a},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"]=s.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=d.call(arguments),r=n.length,i=1!==r||e&&x.isFunction(e.promise)?r:0,o=1===i?e:x.Deferred(),s=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?d.call(arguments):r,n===a?o.notifyWith(t,n):--i||o.resolveWith(t,n)}},a,u,l;if(r>1)for(a=Array(r),u=Array(r),l=Array(r);r>t;t++)n[t]&&x.isFunction(n[t].promise)?n[t].promise().done(s(t,l,n)).fail(o.reject).progress(s(t,u,a)):--i;return i||o.resolveWith(l,n),o.promise()}}),x.support=function(t){var n=o.createElement("input"),r=o.createDocumentFragment(),i=o.createElement("div"),s=o.createElement("select"),a=s.appendChild(o.createElement("option"));return n.type?(n.type="checkbox",t.checkOn=""!==n.value,t.optSelected=a.selected,t.reliableMarginRight=!0,t.boxSizingReliable=!0,t.pixelPosition=!1,n.checked=!0,t.noCloneChecked=n.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!a.disabled,n=o.createElement("input"),n.value="t",n.type="radio",t.radioValue="t"===n.value,n.setAttribute("checked","t"),n.setAttribute("name","t"),r.appendChild(n),t.checkClone=r.cloneNode(!0).cloneNode(!0).lastChild.checked,t.focusinBubbles="onfocusin"in e,i.style.backgroundClip="content-box",i.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===i.style.backgroundClip,x(function(){var n,r,s="padding:0;margin:0;border:0;display:block;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box",a=o.getElementsByTagName("body")[0];a&&(n=o.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",a.appendChild(n).appendChild(i),i.innerHTML="",i.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%",x.swap(a,null!=a.style.zoom?{zoom:1}:{},function(){t.boxSizing=4===i.offsetWidth}),e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(i,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(i,null)||{width:"4px"}).width,r=i.appendChild(o.createElement("div")),r.style.cssText=i.style.cssText=s,r.style.marginRight=r.style.width="0",i.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),a.removeChild(n))}),t):t}({});var L,q,H=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,O=/([A-Z])/g;function F(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=x.expando+Math.random()}F.uid=1,F.accepts=function(e){return e.nodeType?1===e.nodeType||9===e.nodeType:!0},F.prototype={key:function(e){if(!F.accepts(e))return 0;var t={},n=e[this.expando];if(!n){n=F.uid++;try{t[this.expando]={value:n},Object.defineProperties(e,t)}catch(r){t[this.expando]=n,x.extend(e,t)}}return this.cache[n]||(this.cache[n]={}),n},set:function(e,t,n){var r,i=this.key(e),o=this.cache[i];if("string"==typeof t)o[t]=n;else if(x.isEmptyObject(o))this.cache[i]=t;else for(r in t)o[r]=t[r]},get:function(e,t){var n=this.cache[this.key(e)];return t===undefined?n:n[t]},access:function(e,t,n){return t===undefined||t&&"string"==typeof t&&n===undefined?this.get(e,t):(this.set(e,t,n),n!==undefined?n:t)},remove:function(e,t){var n,r,i=this.key(e),o=this.cache[i];if(t===undefined)this.cache[i]={};else{x.isArray(t)?r=t.concat(t.map(x.camelCase)):t in o?r=[t]:(r=x.camelCase(t),r=r in o?[r]:r.match(w)||[]),n=r.length;while(n--)delete o[r[n]]}},hasData:function(e){return!x.isEmptyObject(this.cache[e[this.expando]]||{})},discard:function(e){delete this.cache[this.key(e)]}},L=new F,q=new F,x.extend({acceptData:F.accepts,hasData:function(e){return L.hasData(e)||q.hasData(e)},data:function(e,t,n){return L.access(e,t,n)},removeData:function(e,t){L.remove(e,t)},_data:function(e,t,n){return q.access(e,t,n)},_removeData:function(e,t){q.remove(e,t)}}),x.fn.extend({data:function(e,t){var n,r,i=this[0],o=0,s=null;if(e===undefined){if(this.length&&(s=L.get(i),1===i.nodeType&&!q.get(i,"hasDataAttrs"))){for(n=i.attributes;n.length>o;o++)r=n[o].name,0===r.indexOf("data-")&&(r=x.camelCase(r.substring(5)),P(i,r,s[r]));q.set(i,"hasDataAttrs",!0)}return s}return"object"==typeof e?this.each(function(){L.set(this,e)}):x.access(this,function(t){var n,r=x.camelCase(e);if(i&&t===undefined){if(n=L.get(i,e),n!==undefined)return n;if(n=L.get(i,r),n!==undefined)return n;if(n=P(i,r,undefined),n!==undefined)return n}else this.each(function(){var n=L.get(this,r);L.set(this,r,t),-1!==e.indexOf("-")&&n!==undefined&&L.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){L.remove(this,e)})}});function P(e,t,n){var r;if(n===undefined&&1===e.nodeType)if(r="data-"+t.replace(O,"-$1").toLowerCase(),n=e.getAttribute(r),"string"==typeof n){try{n="true"===n?!0:"false"===n?!1:"null"===n?null:+n+""===n?+n:H.test(n)?JSON.parse(n):n}catch(i){}L.set(e,t,n)}else n=undefined;return n}x.extend({queue:function(e,t,n){var r;return e?(t=(t||"fx")+"queue",r=q.get(e,t),n&&(!r||x.isArray(n)?r=q.access(e,t,x.makeArray(n)):r.push(n)),r||[]):undefined},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,i=n.shift(),o=x._queueHooks(e,t),s=function(){x.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),o.cur=i,i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,s,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return q.get(e,n)||q.access(e,n,{empty:x.Callbacks("once memory").add(function(){q.remove(e,[t+"queue",n])})})}}),x.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),n>arguments.length?x.queue(this[0],e):t===undefined?this:this.each(function(){var n=x.queue(this,e,t);
No newline at end of file
5 x._queueHooks(this,e),"fx"===e&&"inprogress"!==n[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,t){var n,r=1,i=x.Deferred(),o=this,s=this.length,a=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=undefined),e=e||"fx";while(s--)n=q.get(o[s],e+"queueHooks"),n&&n.empty&&(r++,n.empty.add(a));return a(),i.promise(t)}});var R,M,W=/[\t\r\n]/g,$=/\r/g,B=/^(?:input|select|textarea|button)$/i;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 this.each(function(){delete this[x.propFix[e]||e]})},addClass:function(e){var t,n,r,i,o,s=0,a=this.length,u="string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).addClass(e.call(this,t,this.className))});if(u)for(t=(e||"").match(w)||[];a>s;s++)if(n=this[s],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(W," "):" ")){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,s=0,a=this.length,u=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(u)for(t=(e||"").match(w)||[];a>s;s++)if(n=this[s],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(W," "):"")){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,i="boolean"==typeof t;return 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 o,s=0,a=x(this),u=t,l=e.match(w)||[];while(o=l[s++])u=i?u:!a.hasClass(o),a[u?"addClass":"removeClass"](o)}else(n===r||"boolean"===n)&&(this.className&&q.set(this,"__className__",this.className),this.className=this.className||e===!1?"":q.get(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(W," ").indexOf(t)>=0)return!0;return!1},val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=x.isFunction(e),this.each(function(n){var i,o=x(this);1===this.nodeType&&(i=r?e.call(this,n,o.val()):e,null==i?i="":"number"==typeof i?i+="":x.isArray(i)&&(i=x.map(i,function(e){return null==e?"":e+""})),t=x.valHooks[this.type]||x.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&t.set(this,i,"value")!==undefined||(this.value=i))});if(i)return t=x.valHooks[i.type]||x.valHooks[i.nodeName.toLowerCase()],t&&"get"in t&&(n=t.get(i,"value"))!==undefined?n:(n=i.value,"string"==typeof n?n.replace($,""):null==n?"":n)}}}),x.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,s=o?null:[],a=o?i+1:r.length,u=0>i?a:o?i:0;for(;a>u;u++)if(n=r[u],!(!n.selected&&u!==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;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=x.makeArray(t),s=i.length;while(s--)r=i[s],(r.selected=x.inArray(x(r).val(),o)>=0)&&(n=!0);return n||(e.selectedIndex=-1),o}}},attr:function(e,t,n){var i,o,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return typeof e.getAttribute===r?x.prop(e,t,n):(1===s&&x.isXMLDoc(e)||(t=t.toLowerCase(),i=x.attrHooks[t]||(x.expr.match.boolean.test(t)?M:R)),n===undefined?i&&"get"in i&&null!==(o=i.get(e,t))?o:(o=x.find.attr(e,t),null==o?undefined:o):null!==n?i&&"set"in i&&(o=i.set(e,n,t))!==undefined?o:(e.setAttribute(t,n+""),n):(x.removeAttr(e,t),undefined))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(w);if(o&&1===e.nodeType)while(n=o[i++])r=x.propFix[n]||n,x.expr.match.boolean.test(n)&&(e[r]=!1),e.removeAttribute(n)},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,t,n){var r,i,o,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return o=1!==s||!x.isXMLDoc(e),o&&(t=x.propFix[t]||t,i=x.propHooks[t]),n!==undefined?i&&"set"in i&&(r=i.set(e,n,t))!==undefined?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){return e.hasAttribute("tabindex")||B.test(e.nodeName)||e.href?e.tabIndex:-1}}}}),M={set:function(e,t,n){return t===!1?x.removeAttr(e,n):e.setAttribute(n,n),n}},x.each(x.expr.match.boolean.source.match(/\w+/g),function(e,t){var n=x.expr.attrHandle[t]||x.find.attr;x.expr.attrHandle[t]=function(e,t,r){var i=x.expr.attrHandle[t],o=r?undefined:(x.expr.attrHandle[t]=undefined)!=n(e,t,r)?t.toLowerCase():null;return x.expr.attrHandle[t]=i,o}}),x.support.optSelected||(x.propHooks.selected={get:function(e){var t=e.parentNode;return t&&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.each(["radio","checkbox"],function(){x.valHooks[this]={set:function(e,t){return x.isArray(t)?e.checked=x.inArray(x(e).val(),t)>=0:undefined}},x.support.checkOn||(x.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var I=/^key/,z=/^(?:mouse|contextmenu)|click/,_=/^(?:focusinfocus|focusoutblur)$/,X=/^([^.]*)(?:\.(.+)|)$/;function U(){return!0}function Y(){return!1}function V(){try{return o.activeElement}catch(e){}}x.event={global:{},add:function(e,t,n,i,o){var s,a,u,l,c,f,p,h,d,g,m,y=q.get(e);if(y){n.handler&&(s=n,n=s.handler,o=s.selector),n.guid||(n.guid=x.guid++),(l=y.events)||(l=y.events={}),(a=y.handle)||(a=y.handle=function(e){return typeof x===r||e&&x.event.triggered===e.type?undefined:x.event.dispatch.apply(a.elem,arguments)},a.elem=e),t=(t||"").match(w)||[""],c=t.length;while(c--)u=X.exec(t[c])||[],d=m=u[1],g=(u[2]||"").split(".").sort(),d&&(p=x.event.special[d]||{},d=(o?p.delegateType:p.bindType)||d,p=x.event.special[d]||{},f=x.extend({type:d,origType:m,data:i,handler:n,guid:n.guid,selector:o,needsContext:o&&x.expr.match.needsContext.test(o),namespace:g.join(".")},s),(h=l[d])||(h=l[d]=[],h.delegateCount=0,p.setup&&p.setup.call(e,i,g,a)!==!1||e.addEventListener&&e.addEventListener(d,a,!1)),p.add&&(p.add.call(e,f),f.handler.guid||(f.handler.guid=n.guid)),o?h.splice(h.delegateCount++,0,f):h.push(f),x.event.global[d]=!0);e=null}},remove:function(e,t,n,r,i){var o,s,a,u,l,c,f,p,h,d,g,m=q.hasData(e)&&q.get(e);if(m&&(u=m.events)){t=(t||"").match(w)||[""],l=t.length;while(l--)if(a=X.exec(t[l])||[],h=g=a[1],d=(a[2]||"").split(".").sort(),h){f=x.event.special[h]||{},h=(r?f.delegateType:f.bindType)||h,p=u[h]||[],a=a[2]&&RegExp("(^|\\.)"+d.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||a&&!a.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));s&&!p.length&&(f.teardown&&f.teardown.call(e,d,m.handle)!==!1||x.removeEvent(e,h,m.handle),delete u[h])}else for(h in u)x.event.remove(e,h+t[l],n,r,!0);x.isEmptyObject(u)&&(delete m.handle,q.remove(e,"events"))}},trigger:function(t,n,r,i){var s,a,u,l,c,f,p,h=[r||o],d=y.call(t,"type")?t.type:t,g=y.call(t,"namespace")?t.namespace.split("."):[];if(a=u=r=r||o,3!==r.nodeType&&8!==r.nodeType&&!_.test(d+x.event.triggered)&&(d.indexOf(".")>=0&&(g=d.split("."),d=g.shift(),g.sort()),c=0>d.indexOf(":")&&"on"+d,t=t[x.expando]?t:new x.Event(d,"object"==typeof t&&t),t.isTrigger=i?2:3,t.namespace=g.join("."),t.namespace_re=t.namespace?RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=undefined,t.target||(t.target=r),n=null==n?[t]:x.makeArray(n,[t]),p=x.event.special[d]||{},i||!p.trigger||p.trigger.apply(r,n)!==!1)){if(!i&&!p.noBubble&&!x.isWindow(r)){for(l=p.delegateType||d,_.test(l+d)||(a=a.parentNode);a;a=a.parentNode)h.push(a),u=a;u===(r.ownerDocument||o)&&h.push(u.defaultView||u.parentWindow||e)}s=0;while((a=h[s++])&&!t.isPropagationStopped())t.type=s>1?l:p.bindType||d,f=(q.get(a,"events")||{})[t.type]&&q.get(a,"handle"),f&&f.apply(a,n),f=c&&a[c],f&&x.acceptData(a)&&f.apply&&f.apply(a,n)===!1&&t.preventDefault();return t.type=d,i||t.isDefaultPrevented()||p._default&&p._default.apply(h.pop(),n)!==!1||!x.acceptData(r)||c&&x.isFunction(r[d])&&!x.isWindow(r)&&(u=r[c],u&&(r[c]=null),x.event.triggered=d,r[d](),x.event.triggered=undefined,u&&(r[c]=u)),t.result}},dispatch:function(e){e=x.event.fix(e);var t,n,r,i,o,s=[],a=d.call(arguments),u=(q.get(this,"events")||{})[e.type]||[],l=x.event.special[e.type]||{};if(a[0]=e,e.delegateTarget=this,!l.preDispatch||l.preDispatch.call(this,e)!==!1){s=x.event.handlers.call(this,e,u),t=0;while((i=s[t++])&&!e.isPropagationStopped()){e.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!e.isImmediatePropagationStopped())(!e.namespace_re||e.namespace_re.test(o.namespace))&&(e.handleObj=o,e.data=o.data,r=((x.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,a),r!==undefined&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()))}return l.postDispatch&&l.postDispatch.call(this,e),e.result}},handlers:function(e,t){var n,r,i,o,s=[],a=t.delegateCount,u=e.target;if(a&&u.nodeType&&(!e.button||"click"!==e.type))for(;u!==this;u=u.parentNode||this)if(u.disabled!==!0||"click"!==e.type){for(r=[],n=0;a>n;n++)o=t[n],i=o.selector+" ",r[i]===undefined&&(r[i]=o.needsContext?x(i,this).index(u)>=0:x.find(i,this,null,[u]).length),r[i]&&r.push(o);r.length&&s.push({elem:u,handlers:r})}return t.length>a&&s.push({elem:this,handlers:t.slice(a)}),s},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 offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,t){var n,r,i,s=t.button;return null==e.pageX&&null!=t.clientX&&(n=e.target.ownerDocument||o,r=n.documentElement,i=n.body,e.pageX=t.clientX+(r&&r.scrollLeft||i&&i.scrollLeft||0)-(r&&r.clientLeft||i&&i.clientLeft||0),e.pageY=t.clientY+(r&&r.scrollTop||i&&i.scrollTop||0)-(r&&r.clientTop||i&&i.clientTop||0)),e.which||s===undefined||(e.which=1&s?1:2&s?3:4&s?2:0),e}},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=z.test(i)?this.mouseHooks:I.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 3===e.target.nodeType&&(e.target=e.target.parentNode),s.filter?s.filter(e,o):e},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==V()&&this.focus?(this.focus(),!1):undefined},delegateType:"focusin"},blur:{trigger:function(){return this===V()&&this.blur?(this.blur(),!1):undefined},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&x.nodeName(this,"input")?(this.click(),!1):undefined},_default:function(e){return x.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.result!==undefined&&(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=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)},x.Event=function(e,t){return this instanceof x.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.getPreventDefault&&e.getPreventDefault()?U:Y):this.type=e,t&&x.extend(this,t),this.timeStamp=e&&e.timeStamp||x.now(),this[x.expando]=!0,undefined):new x.Event(e,t)},x.Event.prototype={isDefaultPrevented:Y,isPropagationStopped:Y,isImmediatePropagationStopped:Y,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=U,e&&e.preventDefault&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=U,e&&e.stopPropagation&&e.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=U,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.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++&&o.addEventListener(e,r,!0)},teardown:function(){0===--n&&o.removeEventListener(e,r,!0)}}}),x.fn.extend({on:function(e,t,n,r,i){var o,s;if("object"==typeof e){"string"!=typeof t&&(n=n||t,t=undefined);for(s in e)this.on(s,t,n,e[s],i);return this}if(null==n&&null==r?(r=t,n=t=undefined):null==r&&("string"==typeof t?(r=n,n=undefined):(r=n,n=t,t=undefined)),r===!1)r=Y;else if(!r)return this;return 1===i&&(o=r,r=function(e){return x().off(e),o.apply(this,arguments)},r.guid=o.guid||(o.guid=x.guid++)),this.each(function(){x.event.add(this,e,r,n,t)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,x(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return(t===!1||"function"==typeof t)&&(n=t,t=undefined),n===!1&&(n=Y),this.each(function(){x.event.remove(this,e,n,t)})},trigger:function(e,t){return this.each(function(){x.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];return n?x.event.trigger(e,t,n,!0):undefined}});var G=/^.[^:#\[\.,]*$/,J=x.expr.match.needsContext,Q={children:!0,contents:!0,next:!0,prev:!0};x.fn.extend({find:function(e){var t,n,r,i=this.length;if("string"!=typeof e)return t=this,this.pushStack(x(e).filter(function(){for(r=0;i>r;r++)if(x.contains(t[r],this))return!0}));for(n=[],r=0;i>r;r++)x.find(e,this[r],n);return n=this.pushStack(i>1?x.unique(n):n),n.selector=(this.selector?this.selector+" ":"")+e,n},has:function(e){var t=x(e,this),n=t.length;return this.filter(function(){var e=0;for(;n>e;e++)if(x.contains(this,t[e]))return!0})},not:function(e){return this.pushStack(Z(this,e||[],!0))},filter:function(e){return this.pushStack(Z(this,e||[],!1))},is:function(e){return!!e&&("string"==typeof e?J.test(e)?x(e,this.context).index(this[0])>=0:x.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,o=[],s=J.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&&(s?s.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?g.call(x(e),this[0]):g.call(this,e.jquery?e[0]:e):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 K(e,t){while((e=e[t])&&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 K(e,"nextSibling")},prev:function(e){return K(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&&(Q[e]||x.unique(i),"p"===e[0]&&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,t,n){var r=[],i=n!==undefined;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&x(e).is(n))break;r.push(e)}return r},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});function Z(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(G.test(t))return x.filter(t,e,n);t=x.filter(t,e)}return x.grep(e,function(e){return g.call(t,e)>=0!==n})}var et=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,tt=/<([\w:]+)/,nt=/<|&#?\w+;/,rt=/<(?:script|style|link)/i,it=/^(?:checkbox|radio)$/i,ot=/checked\s*(?:[^=]|=\s*.checked.)/i,st=/^$|\/(?:java|ecma)script/i,at=/^true\/(.*)/,ut=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,lt={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};lt.optgroup=lt.option,lt.tbody=lt.tfoot=lt.colgroup=lt.caption=lt.col=lt.thead,lt.th=lt.td,x.fn.extend({text:function(e){return x.access(this,function(e){return e===undefined?x.text(this):this.empty().append((this[0]&&this[0].ownerDocument||o).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=ct(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=ct(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(gt(n)),n.parentNode&&(t&&x.contains(n.ownerDocument,n)&&ht(gt(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(gt(e,!1)),e.textContent="");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 t=this[0]||{},n=0,r=this.length;if(e===undefined&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!rt.test(e)&&!lt[(tt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(et,"<$1></$2>");try{for(;r>n;n++)t=this[n]||{},1===t.nodeType&&(x.cleanData(gt(t,!1)),t.innerHTML=e);t=0}catch(i){}}t&&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&&(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=p.apply([],e);var r,i,o,s,a,u,l=0,c=this.length,f=this,h=c-1,d=e[0],g=x.isFunction(d);if(g||!(1>=c||"string"!=typeof d||x.support.checkClone)&&ot.test(d))return this.each(function(r){var i=f.eq(r);g&&(e[0]=d.call(this,r,i.html())),i.domManip(e,t,n)});if(c&&(r=x.buildFragment(e,this[0].ownerDocument,!1,!n&&this),i=r.firstChild,1===r.childNodes.length&&(r=i),i)){for(o=x.map(gt(r,"script"),ft),s=o.length;c>l;l++)a=r,l!==h&&(a=x.clone(a,!0,!0),s&&x.merge(o,gt(a,"script"))),t.call(this[l],a,l);if(s)for(u=o[o.length-1].ownerDocument,x.map(o,pt),l=0;s>l;l++)a=o[l],st.test(a.type||"")&&!q.access(a,"globalEval")&&x.contains(u,a)&&(a.src?x._evalUrl(a.src):x.globalEval(a.textContent.replace(ut,"")))}return this}}),x.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){x.fn[e]=function(e){var n,r=[],i=x(e),o=i.length-1,s=0;for(;o>=s;s++)n=s===o?this:this.clone(!0),x(i[s])[t](n),h.apply(r,n.get());return this.pushStack(r)}}),x.extend({clone:function(e,t,n){var r,i,o,s,a=e.cloneNode(!0),u=x.contains(e.ownerDocument,e);if(!(x.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||x.isXMLDoc(e)))for(s=gt(a),o=gt(e),r=0,i=o.length;i>r;r++)mt(o[r],s[r]);if(t)if(n)for(o=o||gt(e),s=s||gt(a),r=0,i=o.length;i>r;r++)dt(o[r],s[r]);else dt(e,a);return s=gt(a,"script"),s.length>0&&ht(s,!u&&gt(e,"script")),a},buildFragment:function(e,t,n,r){var i,o,s,a,u,l,c=0,f=e.length,p=t.createDocumentFragment(),h=[];for(;f>c;c++)if(i=e[c],i||0===i)if("object"===x.type(i))x.merge(h,i.nodeType?[i]:i);else if(nt.test(i)){o=o||p.appendChild(t.createElement("div")),s=(tt.exec(i)||["",""])[1].toLowerCase(),a=lt[s]||lt._default,o.innerHTML=a[1]+i.replace(et,"<$1></$2>")+a[2],l=a[0];while(l--)o=o.firstChild;x.merge(h,o.childNodes),o=p.firstChild,o.textContent=""}else h.push(t.createTextNode(i));p.textContent="",c=0;while(i=h[c++])if((!r||-1===x.inArray(i,r))&&(u=x.contains(i.ownerDocument,i),o=gt(p.appendChild(i),"script"),u&&ht(o),n)){l=0;while(i=o[l++])st.test(i.type||"")&&n.push(i)}return p},cleanData:function(e){var t,n,r,i=e.length,o=0,s=x.event.special;for(;i>o;o++){if(n=e[o],x.acceptData(n)&&(t=q.access(n)))for(r in t.events)s[r]?x.event.remove(n,r):x.removeEvent(n,r,t.handle);L.discard(n),q.discard(n)}},_evalUrl:function(e){return x.ajax({url:e,type:"GET",dataType:"text",async:!1,global:!1,success:x.globalEval})}});function ct(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 ft(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function pt(e){var t=at.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function ht(e,t){var n=e.length,r=0;for(;n>r;r++)q.set(e[r],"globalEval",!t||q.get(t[r],"globalEval"))}function dt(e,t){var n,r,i,o,s,a,u,l;if(1===t.nodeType){if(q.hasData(e)&&(o=q.access(e),s=x.extend({},o),l=o.events,q.set(t,s),l)){delete s.handle,s.events={};for(i in l)for(n=0,r=l[i].length;r>n;n++)x.event.add(t,i,l[i][n])}L.hasData(e)&&(a=L.access(e),u=x.extend({},a),L.set(t,u))}}function gt(e,t){var n=e.getElementsByTagName?e.getElementsByTagName(t||"*"):e.querySelectorAll?e.querySelectorAll(t||"*"):[];return t===undefined||t&&x.nodeName(e,t)?x.merge([e],n):n}function mt(e,t){var n=t.nodeName.toLowerCase();"input"===n&&it.test(e.type)?t.checked=e.checked:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}x.fn.extend({wrapAll:function(e){var t;return x.isFunction(e)?this.each(function(t){x(this).wrapAll(e.call(this,t))}):(this[0]&&(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.firstElementChild)e=e.firstElementChild;return e}).append(this)),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 yt,vt,xt=/^(none|table(?!-c[ea]).+)/,bt=/^margin/,wt=RegExp("^("+b+")(.*)$","i"),Tt=RegExp("^("+b+")(?!px)[a-z%]+$","i"),Ct=RegExp("^([+-])=("+b+")","i"),kt={BODY:"block"},Nt={position:"absolute",visibility:"hidden",display:"block"},Et={letterSpacing:0,fontWeight:400},St=["Top","Right","Bottom","Left"],jt=["Webkit","O","Moz","ms"];function Dt(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=jt.length;while(i--)if(t=jt[i]+n,t in e)return t;return r}function At(e,t){return e=t||e,"none"===x.css(e,"display")||!x.contains(e.ownerDocument,e)}function Lt(t){return e.getComputedStyle(t,null)}function qt(e,t){var n,r,i,o=[],s=0,a=e.length;for(;a>s;s++)r=e[s],r.style&&(o[s]=q.get(r,"olddisplay"),n=r.style.display,t?(o[s]||"none"!==n||(r.style.display=""),""===r.style.display&&At(r)&&(o[s]=q.access(r,"olddisplay",Pt(r.nodeName)))):o[s]||(i=At(r),(n&&"none"!==n||!i)&&q.set(r,"olddisplay",i?n:x.css(r,"display"))));for(s=0;a>s;s++)r=e[s],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[s]||"":"none"));return e}x.fn.extend({css:function(e,t){return x.access(this,function(e,t,n){var r,i,o={},s=0;if(x.isArray(t)){for(r=Lt(e),i=t.length;i>s;s++)o[t[s]]=x.css(e,t[s],!1,r);return o}return n!==undefined?x.style(e,t,n):x.css(e,t)},e,t,arguments.length>1)},show:function(){return qt(this,!0)},hide:function(){return qt(this)},toggle:function(e){var t="boolean"==typeof e;return this.each(function(){(t?e:At(this))?x(this).show():x(this).hide()})}}),x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=yt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,s,a=x.camelCase(t),u=e.style;return t=x.cssProps[a]||(x.cssProps[a]=Dt(u,a)),s=x.cssHooks[t]||x.cssHooks[a],n===undefined?s&&"get"in s&&(i=s.get(e,!1,r))!==undefined?i:u[t]:(o=typeof n,"string"===o&&(i=Ct.exec(n))&&(n=(i[1]+1)*i[2]+parseFloat(x.css(e,t)),o="number"),null==n||"number"===o&&isNaN(n)||("number"!==o||x.cssNumber[a]||(n+="px"),x.support.clearCloneStyle||""!==n||0!==t.indexOf("background")||(u[t]="inherit"),s&&"set"in s&&(n=s.set(e,n,r))===undefined||(u[t]=n)),undefined)}},css:function(e,t,n,r){var i,o,s,a=x.camelCase(t);return t=x.cssProps[a]||(x.cssProps[a]=Dt(e.style,a)),s=x.cssHooks[t]||x.cssHooks[a],s&&"get"in s&&(i=s.get(e,!0,n)),i===undefined&&(i=yt(e,t,r)),"normal"===i&&t in Et&&(i=Et[t]),""===n||n?(o=parseFloat(i),n===!0||x.isNumeric(o)?o||0:i):i}}),yt=function(e,t,n){var r,i,o,s=n||Lt(e),a=s?s.getPropertyValue(t)||s[t]:undefined,u=e.style;return s&&(""!==a||x.contains(e.ownerDocument,e)||(a=x.style(e,t)),Tt.test(a)&&bt.test(t)&&(r=u.width,i=u.minWidth,o=u.maxWidth,u.minWidth=u.maxWidth=u.width=a,a=s.width,u.width=r,u.minWidth=i,u.maxWidth=o)),a};function Ht(e,t,n){var r=wt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function Ot(e,t,n,r,i){var o=n===(r?"border":"content")?4:"width"===t?1:0,s=0;for(;4>o;o+=2)"margin"===n&&(s+=x.css(e,n+St[o],!0,i)),r?("content"===n&&(s-=x.css(e,"padding"+St[o],!0,i)),"margin"!==n&&(s-=x.css(e,"border"+St[o]+"Width",!0,i))):(s+=x.css(e,"padding"+St[o],!0,i),"padding"!==n&&(s+=x.css(e,"border"+St[o]+"Width",!0,i)));return s}function Ft(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Lt(e),s=x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=yt(e,t,o),(0>i||null==i)&&(i=e.style[t]),Tt.test(i))return i;r=s&&(x.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+Ot(e,t,n||(s?"border":"content"),r,o)+"px"}function Pt(e){var t=o,n=kt[e];return n||(n=Rt(e,t),"none"!==n&&n||(vt=(vt||x("<iframe frameborder='0' width='0' height='0'/>").css("cssText","display:block !important")).appendTo(t.documentElement),t=(vt[0].contentWindow||vt[0].contentDocument).document,t.write("<!doctype html><html><body>"),t.close(),n=Rt(e,t),vt.detach()),kt[e]=n),n}function Rt(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,t){x.cssHooks[t]={get:function(e,n,r){return n?0===e.offsetWidth&&xt.test(x.css(e,"display"))?x.swap(e,Nt,function(){return Ft(e,t,r)}):Ft(e,t,r):undefined},set:function(e,n,r){var i=r&&Lt(e);return Ht(e,n,r?Ot(e,t,r,x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,i),i):0)}}}),x(function(){x.support.reliableMarginRight||(x.cssHooks.marginRight={get:function(e,t){return t?x.swap(e,{display:"inline-block"},yt,[e,"marginRight"]):undefined}}),!x.support.pixelPosition&&x.fn.position&&x.each(["top","left"],function(e,t){x.cssHooks[t]={get:function(e,n){return n?(n=yt(e,t),Tt.test(n)?x(e).position()[t]+"px":n):undefined}}})}),x.expr&&x.expr.filters&&(x.expr.filters.hidden=function(e){return 0>=e.offsetWidth&&0>=e.offsetHeight},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+St[r]+t]=o[r]||o[r-2]||o[0];return i}},bt.test(e)||(x.cssHooks[e+t].set=Ht)});var Mt=/%20/g,Wt=/\[\]$/,$t=/\r?\n/g,Bt=/^(?:submit|button|image|reset|file)$/i,It=/^(?: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")&&It.test(this.nodeName)&&!Bt.test(e)&&(this.checked||!it.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($t,"\r\n")}}):{name:t.name,value:n.replace($t,"\r\n")}}).get()}}),x.param=function(e,t){var n,r=[],i=function(e,t){t=x.isFunction(t)?t():null==t?"":t,r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(t===undefined&&(t=x.ajaxSettings&&x.ajaxSettings.traditional),x.isArray(e)||e.jquery&&!x.isPlainObject(e))x.each(e,function(){i(this.name,this.value)});else for(n in e)zt(n,e[n],t,i);return r.join("&").replace(Mt,"+")};function zt(e,t,n,r){var i;if(x.isArray(t))x.each(t,function(t,i){n||Wt.test(e)?r(e,i):zt(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==x.type(t))r(e,t);else for(i in t)zt(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 _t,Xt,Ut=x.now(),Yt=/\?/,Vt=/#.*$/,Gt=/([?&])_=[^&]*/,Jt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Qt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Kt=/^(?:GET|HEAD)$/,Zt=/^\/\//,en=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,tn=x.fn.load,nn={},rn={},on="*/".concat("*");try{Xt=i.href}catch(sn){Xt=o.createElement("a"),Xt.href="",Xt=Xt.href}_t=en.exec(Xt.toLowerCase())||[];function an(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(w)||[];
No newline at end of file
6 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 un(e,t,n,r){var i={},o=e===rn;function s(a){var u;return i[a]=!0,x.each(e[a]||[],function(e,a){var l=a(t,n,r);return"string"!=typeof l||o||i[l]?o?!(u=l):undefined:(t.dataTypes.unshift(l),s(l),!1)}),u}return s(t.dataTypes[0])||!i["*"]&&s("*")}function ln(e,t){var n,r,i=x.ajaxSettings.flatOptions||{};for(n in t)t[n]!==undefined&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&x.extend(!0,e,r),e}x.fn.load=function(e,t,n){if("string"!=typeof e&&tn)return tn.apply(this,arguments);var r,i,o,s=this,a=e.indexOf(" ");return a>=0&&(r=e.slice(a),e=e.slice(0,a)),x.isFunction(t)?(n=t,t=undefined):t&&"object"==typeof t&&(i="POST"),s.length>0&&x.ajax({url:e,type:i,dataType:"html",data:t}).done(function(e){o=arguments,s.html(r?x("<div>").append(x.parseHTML(e)).find(r):e)}).complete(n&&function(e,t){s.each(n,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:Xt,type:"GET",isLocal:Qt.test(_t[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":on,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?ln(ln(e,x.ajaxSettings),t):ln(x.ajaxSettings,e)},ajaxPrefilter:an(nn),ajaxTransport:an(rn),ajax:function(e,t){"object"==typeof e&&(t=e,e=undefined),t=t||{};var n,r,i,o,s,a,u,l,c=x.ajaxSetup({},t),f=c.context||c,p=c.context&&(f.nodeType||f.jquery)?x(f):x.event,h=x.Deferred(),d=x.Callbacks("once memory"),g=c.statusCode||{},m={},y={},v=0,b="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(2===v){if(!o){o={};while(t=Jt.exec(i))o[t[1].toLowerCase()]=t[2]}t=o[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===v?i:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return v||(e=y[n]=y[n]||e,m[e]=t),this},overrideMimeType:function(e){return v||(c.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>v)for(t in e)g[t]=[g[t],e[t]];else T.always(e[T.status]);return this},abort:function(e){var t=e||b;return n&&n.abort(t),k(0,t),this}};if(h.promise(T).complete=d.add,T.success=T.done,T.error=T.fail,c.url=((e||c.url||Xt)+"").replace(Vt,"").replace(Zt,_t[1]+"//"),c.type=t.method||t.type||c.method||c.type,c.dataTypes=x.trim(c.dataType||"*").toLowerCase().match(w)||[""],null==c.crossDomain&&(a=en.exec(c.url.toLowerCase()),c.crossDomain=!(!a||a[1]===_t[1]&&a[2]===_t[2]&&(a[3]||("http:"===a[1]?"80":"443"))===(_t[3]||("http:"===_t[1]?"80":"443")))),c.data&&c.processData&&"string"!=typeof c.data&&(c.data=x.param(c.data,c.traditional)),un(nn,c,t,T),2===v)return T;u=c.global,u&&0===x.active++&&x.event.trigger("ajaxStart"),c.type=c.type.toUpperCase(),c.hasContent=!Kt.test(c.type),r=c.url,c.hasContent||(c.data&&(r=c.url+=(Yt.test(r)?"&":"?")+c.data,delete c.data),c.cache===!1&&(c.url=Gt.test(r)?r.replace(Gt,"$1_="+Ut++):r+(Yt.test(r)?"&":"?")+"_="+Ut++)),c.ifModified&&(x.lastModified[r]&&T.setRequestHeader("If-Modified-Since",x.lastModified[r]),x.etag[r]&&T.setRequestHeader("If-None-Match",x.etag[r])),(c.data&&c.hasContent&&c.contentType!==!1||t.contentType)&&T.setRequestHeader("Content-Type",c.contentType),T.setRequestHeader("Accept",c.dataTypes[0]&&c.accepts[c.dataTypes[0]]?c.accepts[c.dataTypes[0]]+("*"!==c.dataTypes[0]?", "+on+"; q=0.01":""):c.accepts["*"]);for(l in c.headers)T.setRequestHeader(l,c.headers[l]);if(c.beforeSend&&(c.beforeSend.call(f,T,c)===!1||2===v))return T.abort();b="abort";for(l in{success:1,error:1,complete:1})T[l](c[l]);if(n=un(rn,c,t,T)){T.readyState=1,u&&p.trigger("ajaxSend",[T,c]),c.async&&c.timeout>0&&(s=setTimeout(function(){T.abort("timeout")},c.timeout));try{v=1,n.send(m,k)}catch(C){if(!(2>v))throw C;k(-1,C)}}else k(-1,"No Transport");function k(e,t,o,a){var l,m,y,b,w,C=t;2!==v&&(v=2,s&&clearTimeout(s),n=undefined,i=a||"",T.readyState=e>0?4:0,l=e>=200&&300>e||304===e,o&&(b=cn(c,T,o)),b=fn(c,b,T,l),l?(c.ifModified&&(w=T.getResponseHeader("Last-Modified"),w&&(x.lastModified[r]=w),w=T.getResponseHeader("etag"),w&&(x.etag[r]=w)),204===e?C="nocontent":304===e?C="notmodified":(C=b.state,m=b.data,y=b.error,l=!y)):(y=C,(e||!C)&&(C="error",0>e&&(e=0))),T.status=e,T.statusText=(t||C)+"",l?h.resolveWith(f,[m,C,T]):h.rejectWith(f,[T,C,y]),T.statusCode(g),g=undefined,u&&p.trigger(l?"ajaxSuccess":"ajaxError",[T,c,l?m:y]),d.fireWith(f,[T,C]),u&&(p.trigger("ajaxComplete",[T,c]),--x.active||x.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return x.get(e,t,n,"json")},getScript:function(e,t){return x.get(e,undefined,t,"script")}}),x.each(["get","post"],function(e,t){x[t]=function(e,n,r,i){return x.isFunction(n)&&(i=i||r,r=n,n=undefined),x.ajax({url:e,type:t,dataType:i,data:n,success:r})}});function cn(e,t,n){var r,i,o,s,a=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),r===undefined&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in a)if(a[i]&&a[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}s||(s=i)}o=o||s}return o?(o!==u[0]&&u.unshift(o),n[o]):undefined}function fn(e,t,n,r){var i,o,s,a,u,l={},c=e.dataTypes.slice();if(c[1])for(s in e.converters)l[s.toLowerCase()]=e.converters[s];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(s=l[u+" "+o]||l["* "+o],!s)for(i in l)if(a=i.split(" "),a[1]===o&&(s=l[u+" "+a[0]]||l["* "+a[0]])){s===!0?s=l[i]:l[i]!==!0&&(o=a[0],c.unshift(a[1]));break}if(s!==!0)if(s&&e["throws"])t=s(t);else try{t=s(t)}catch(f){return{state:"parsererror",error:s?f:"No conversion from "+u+" 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===undefined&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),x.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=x("<script>").prop({async:!0,charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),o.head.appendChild(t[0])},abort:function(){n&&n()}}}});var pn=[],hn=/(=)\?(?=&|$)|\?\?/;x.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=pn.pop()||x.expando+"_"+Ut++;return this[e]=!0,e}}),x.ajaxPrefilter("json jsonp",function(t,n,r){var i,o,s,a=t.jsonp!==!1&&(hn.test(t.url)?"url":"string"==typeof t.data&&!(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&hn.test(t.data)&&"data");return a||"jsonp"===t.dataTypes[0]?(i=t.jsonpCallback=x.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,a?t[a]=t[a].replace(hn,"$1"+i):t.jsonp!==!1&&(t.url+=(Yt.test(t.url)?"&":"?")+t.jsonp+"="+i),t.converters["script json"]=function(){return s||x.error(i+" was not called"),s[0]},t.dataTypes[0]="json",o=e[i],e[i]=function(){s=arguments},r.always(function(){e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,pn.push(i)),s&&x.isFunction(o)&&o(s[0]),s=o=undefined}),"script"):undefined}),x.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(e){}};var dn=x.ajaxSettings.xhr(),gn={0:200,1223:204},mn=0,yn={};e.ActiveXObject&&x(e).on("unload",function(){for(var e in yn)yn[e]();yn=undefined}),x.support.cors=!!dn&&"withCredentials"in dn,x.support.ajax=dn=!!dn,x.ajaxTransport(function(e){var t;return x.support.cors||dn&&!e.crossDomain?{send:function(n,r){var i,o,s=e.xhr();if(s.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(i in e.xhrFields)s[i]=e.xhrFields[i];e.mimeType&&s.overrideMimeType&&s.overrideMimeType(e.mimeType),e.crossDomain||n["X-Requested-With"]||(n["X-Requested-With"]="XMLHttpRequest");for(i in n)s.setRequestHeader(i,n[i]);t=function(e){return function(){t&&(delete yn[o],t=s.onload=s.onerror=null,"abort"===e?s.abort():"error"===e?r(s.status||404,s.statusText):r(gn[s.status]||s.status,s.statusText,"string"==typeof s.responseText?{text:s.responseText}:undefined,s.getAllResponseHeaders()))}},s.onload=t(),s.onerror=t("error"),t=yn[o=mn++]=t("abort"),s.send(e.hasContent&&e.data||null)},abort:function(){t&&t()}}:undefined});var vn,xn,bn=/^(?:toggle|show|hide)$/,wn=RegExp("^(?:([+-])=|)("+b+")([a-z%]*)$","i"),Tn=/queueHooks$/,Cn=[Dn],kn={"*":[function(e,t){var n,r,i=this.createTween(e,t),o=wn.exec(t),s=i.cur(),a=+s||0,u=1,l=20;if(o){if(n=+o[2],r=o[3]||(x.cssNumber[e]?"":"px"),"px"!==r&&a){a=x.css(i.elem,e,!0)||n||1;do u=u||".5",a/=u,x.style(i.elem,e,a+r);while(u!==(u=i.cur()/s)&&1!==u&&--l)}i.unit=r,i.start=a,i.end=o[1]?a+(o[1]+1)*n:n}return i}]};function Nn(){return setTimeout(function(){vn=undefined}),vn=x.now()}function En(e,t){x.each(t,function(t,n){var r=(kn[t]||[]).concat(kn["*"]),i=0,o=r.length;for(;o>i;i++)if(r[i].call(e,t,n))return})}function Sn(e,t,n){var r,i,o=0,s=Cn.length,a=x.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;var t=vn||Nn(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,o=1-r,s=0,u=l.tweens.length;for(;u>s;s++)l.tweens[s].run(o);return a.notifyWith(e,[l,o,n]),1>o&&u?n:(a.resolveWith(e,[l]),!1)},l=a.promise({elem:e,props:x.extend({},t),opts:x.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:vn||Nn(),duration:n.duration,tweens:[],createTween:function(t,n){var r=x.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)l.tweens[n].run(1);return t?a.resolveWith(e,[l,t]):a.rejectWith(e,[l,t]),this}}),c=l.props;for(jn(c,l.opts.specialEasing);s>o;o++)if(r=Cn[o].call(l,e,c,l.opts))return r;return En(l,c),x.isFunction(l.opts.start)&&l.opts.start.call(e,l),x.fx.timer(x.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}function jn(e,t){var n,r,i,o,s;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]),s=x.cssHooks[r],s&&"expand"in s){o=s.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(Sn,{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],kn[n]=kn[n]||[],kn[n].unshift(t)},prefilter:function(e,t){t?Cn.unshift(e):Cn.push(e)}});function Dn(e,t,n){var r,i,o,s,a,u,l,c,f,p=this,h=e.style,d={},g=[],m=e.nodeType&&At(e);n.queue||(c=x._queueHooks(e,"fx"),null==c.unqueued&&(c.unqueued=0,f=c.empty.fire,c.empty.fire=function(){c.unqueued||f()}),c.unqueued++,p.always(function(){p.always(function(){c.unqueued--,x.queue(e,"fx").length||c.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],"inline"===x.css(e,"display")&&"none"===x.css(e,"float")&&(h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),a=q.get(e,"fxshow");for(r in t)if(o=t[r],bn.exec(o)){if(delete t[r],u=u||"toggle"===o,o===(m?"hide":"show")){if("show"!==o||a===undefined||a[r]===undefined)continue;m=!0}g.push(r)}if(s=g.length){a=q.get(e,"fxshow")||q.access(e,"fxshow",{}),"hidden"in a&&(m=a.hidden),u&&(a.hidden=!m),m?x(e).show():p.done(function(){x(e).hide()}),p.done(function(){var t;q.remove(e,"fxshow");for(t in d)x.style(e,t,d[t])});for(r=0;s>r;r++)i=g[r],l=p.createTween(i,m?a[i]:0),d[i]=a[i]||x.style(e,i),i in a||(a[i]=l.start,m&&(l.end=l.start,l.start="width"===i||"height"===i?1:0))}}function An(e,t,n,r,i){return new An.prototype.init(e,t,n,r,i)}x.Tween=An,An.prototype={constructor:An,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=An.propHooks[this.prop];return e&&e.get?e.get(this):An.propHooks._default.get(this)},run:function(e){var t,n=An.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):An.propHooks._default.set(this),this}},An.prototype.init.prototype=An.prototype,An.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}}},An.propHooks.scrollTop=An.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(Ln(t,!0),e,r,i)}}),x.fn.extend({fadeTo:function(e,t,n,r){return this.filter(At).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),s=function(){var t=Sn(this,x.extend({},e),o);s.finish=function(){t.stop(!0)},(i||q.get(this,"finish"))&&t.stop(!0)};return s.finish=s,i||o.queue===!1?this.each(s):this.queue(o.queue,s)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=undefined),t&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=x.timers,s=q.get(this);if(i)s[i]&&s[i].stop&&r(s[i]);else for(i in s)s[i]&&s[i].stop&&Tn.test(i)&&r(s[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));(t||!n)&&x.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=q.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=x.timers,s=r?r.length:0;for(n.finish=!0,x.queue(this,e,[]),i&&i.cur&&i.cur.finish&&i.cur.finish.call(this),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;s>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}});function Ln(e,t){var n,r={height:e},i=0;for(t=t?1:0;4>i;i+=2-t)n=St[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}x.each({slideDown:Ln("show"),slideUp:Ln("hide"),slideToggle:Ln("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=An.prototype.init,x.fx.tick=function(){var e,t=x.timers,n=0;for(vn=x.now();t.length>n;n++)e=t[n],e()||t[n]!==e||t.splice(n--,1);t.length||x.fx.stop(),vn=undefined},x.fx.timer=function(e){e()&&x.timers.push(e)&&x.fx.start()},x.fx.interval=13,x.fx.start=function(){xn||(xn=setInterval(x.fx.tick,x.fx.interval))},x.fx.stop=function(){clearInterval(xn),xn=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===undefined?this:this.each(function(t){x.offset.setOffset(this,e,t)});var t,n,i=this[0],o={top:0,left:0},s=i&&i.ownerDocument;if(s)return t=s.documentElement,x.contains(t,i)?(typeof i.getBoundingClientRect!==r&&(o=i.getBoundingClientRect()),n=qn(s),{top:o.top+n.pageYOffset-t.clientTop,left:o.left+n.pageXOffset-t.clientLeft}):o},x.offset={setOffset:function(e,t,n){var r,i,o,s,a,u,l,c=x.css(e,"position"),f=x(e),p={};"static"===c&&(e.style.position="relative"),a=f.offset(),o=x.css(e,"top"),u=x.css(e,"left"),l=("absolute"===c||"fixed"===c)&&(o+u).indexOf("auto")>-1,l?(r=f.position(),s=r.top,i=r.left):(s=parseFloat(o)||0,i=parseFloat(u)||0),x.isFunction(t)&&(t=t.call(e,n,a)),null!=t.top&&(p.top=t.top-a.top+s),null!=t.left&&(p.left=t.left-a.left+i),"using"in t?t.using.call(e,p):f.css(p)}},x.fn.extend({position:function(){if(this[0]){var e,t,n=this[0],r={top:0,left:0};return"fixed"===x.css(n,"position")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),x.nodeName(e[0],"html")||(r=e.offset()),r.top+=x.css(e[0],"borderTopWidth",!0),r.left+=x.css(e[0],"borderLeftWidth",!0)),{top:t.top-r.top-x.css(n,"marginTop",!0),left:t.left-r.left-x.css(n,"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(t,n){var r="pageYOffset"===n;x.fn[t]=function(i){return x.access(this,function(t,i,o){var s=qn(t);return o===undefined?s?s[n]:t[i]:(s?s.scrollTo(r?e.pageXOffset:o,r?o:e.pageYOffset):t[i]=o,undefined)},t,i,arguments.length,null)}});function qn(e){return x.isWindow(e)?e:9===e.nodeType&&e.defaultView}x.each({Height:"height",Width:"width"},function(e,t){x.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){x.fn[r]=function(r,i){var o=arguments.length&&(n||"boolean"!=typeof r),s=n||(r===!0||i===!0?"margin":"border");return x.access(this,function(t,n,r){var i;return x.isWindow(t)?t.document.documentElement["client"+e]:9===t.nodeType?(i=t.documentElement,Math.max(t.body["scroll"+e],i["scroll"+e],t.body["offset"+e],i["offset"+e],i["client"+e])):r===undefined?x.css(t,n,s):x.style(t,n,r,s)},t,o?r:undefined,o,null)}})}),x.fn.size=function(){return this.length},x.fn.andSelf=x.fn.addBack,"object"==typeof module&&"object"==typeof module.exports?module.exports=x:"function"==typeof define&&define.amd&&define("jquery",[],function(){return x}),"object"==typeof e&&"object"==typeof e.document&&(e.jQuery=e.$=x)})(window); No newline at end of file
@@ -0,0 +1,2
1 /*! jQuery v1.8.3 jquery.com | jquery.org/license */
No newline at end of file
2 (function(e,t){function _(e){var t=M[e]={};return v.each(e.split(y),function(e,n){t[n]=!0}),t}function H(e,n,r){if(r===t&&e.nodeType===1){var i="data-"+n.replace(P,"-$1").toLowerCase();r=e.getAttribute(i);if(typeof r=="string"){try{r=r==="true"?!0:r==="false"?!1:r==="null"?null:+r+""===r?+r:D.test(r)?v.parseJSON(r):r}catch(s){}v.data(e,n,r)}else r=t}return r}function B(e){var t;for(t in e){if(t==="data"&&v.isEmptyObject(e[t]))continue;if(t!=="toJSON")return!1}return!0}function et(){return!1}function tt(){return!0}function ut(e){return!e||!e.parentNode||e.parentNode.nodeType===11}function at(e,t){do e=e[t];while(e&&e.nodeType!==1);return e}function ft(e,t,n){t=t||0;if(v.isFunction(t))return v.grep(e,function(e,r){var i=!!t.call(e,r,e);return i===n});if(t.nodeType)return v.grep(e,function(e,r){return e===t===n});if(typeof t=="string"){var r=v.grep(e,function(e){return e.nodeType===1});if(it.test(t))return v.filter(t,r,!n);t=v.filter(t,r)}return v.grep(e,function(e,r){return v.inArray(e,t)>=0===n})}function lt(e){var t=ct.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}function Lt(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function At(e,t){if(t.nodeType!==1||!v.hasData(e))return;var n,r,i,s=v._data(e),o=v._data(t,s),u=s.events;if(u){delete o.handle,o.events={};for(n in u)for(r=0,i=u[n].length;r<i;r++)v.event.add(t,n,u[n][r])}o.data&&(o.data=v.extend({},o.data))}function Ot(e,t){var n;if(t.nodeType!==1)return;t.clearAttributes&&t.clearAttributes(),t.mergeAttributes&&t.mergeAttributes(e),n=t.nodeName.toLowerCase(),n==="object"?(t.parentNode&&(t.outerHTML=e.outerHTML),v.support.html5Clone&&e.innerHTML&&!v.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):n==="input"&&Et.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):n==="option"?t.selected=e.defaultSelected:n==="input"||n==="textarea"?t.defaultValue=e.defaultValue:n==="script"&&t.text!==e.text&&(t.text=e.text),t.removeAttribute(v.expando)}function Mt(e){return typeof e.getElementsByTagName!="undefined"?e.getElementsByTagName("*"):typeof e.querySelectorAll!="undefined"?e.querySelectorAll("*"):[]}function _t(e){Et.test(e.type)&&(e.defaultChecked=e.checked)}function Qt(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=Jt.length;while(i--){t=Jt[i]+n;if(t in e)return t}return r}function Gt(e,t){return e=t||e,v.css(e,"display")==="none"||!v.contains(e.ownerDocument,e)}function Yt(e,t){var n,r,i=[],s=0,o=e.length;for(;s<o;s++){n=e[s];if(!n.style)continue;i[s]=v._data(n,"olddisplay"),t?(!i[s]&&n.style.display==="none"&&(n.style.display=""),n.style.display===""&&Gt(n)&&(i[s]=v._data(n,"olddisplay",nn(n.nodeName)))):(r=Dt(n,"display"),!i[s]&&r!=="none"&&v._data(n,"olddisplay",r))}for(s=0;s<o;s++){n=e[s];if(!n.style)continue;if(!t||n.style.display==="none"||n.style.display==="")n.style.display=t?i[s]||"":"none"}return e}function Zt(e,t,n){var r=Rt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function en(e,t,n,r){var i=n===(r?"border":"content")?4:t==="width"?1:0,s=0;for(;i<4;i+=2)n==="margin"&&(s+=v.css(e,n+$t[i],!0)),r?(n==="content"&&(s-=parseFloat(Dt(e,"padding"+$t[i]))||0),n!=="margin"&&(s-=parseFloat(Dt(e,"border"+$t[i]+"Width"))||0)):(s+=parseFloat(Dt(e,"padding"+$t[i]))||0,n!=="padding"&&(s+=parseFloat(Dt(e,"border"+$t[i]+"Width"))||0));return s}function tn(e,t,n){var r=t==="width"?e.offsetWidth:e.offsetHeight,i=!0,s=v.support.boxSizing&&v.css(e,"boxSizing")==="border-box";if(r<=0||r==null){r=Dt(e,t);if(r<0||r==null)r=e.style[t];if(Ut.test(r))return r;i=s&&(v.support.boxSizingReliable||r===e.style[t]),r=parseFloat(r)||0}return r+en(e,t,n||(s?"border":"content"),i)+"px"}function nn(e){if(Wt[e])return Wt[e];var t=v("<"+e+">").appendTo(i.body),n=t.css("display");t.remove();if(n==="none"||n===""){Pt=i.body.appendChild(Pt||v.extend(i.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!Ht||!Pt.createElement)Ht=(Pt.contentWindow||Pt.contentDocument).document,Ht.write("<!doctype html><html><body>"),Ht.close();t=Ht.body.appendChild(Ht.createElement(e)),n=Dt(t,"display"),i.body.removeChild(Pt)}return Wt[e]=n,n}function fn(e,t,n,r){var i;if(v.isArray(t))v.each(t,function(t,i){n||sn.test(e)?r(e,i):fn(e+"["+(typeof i=="object"?t:"")+"]",i,n,r)});else if(!n&&v.type(t)==="object")for(i in t)fn(e+"["+i+"]",t[i],n,r);else r(e,t)}function Cn(e){return function(t,n){typeof t!="string"&&(n=t,t="*");var r,i,s,o=t.toLowerCase().split(y),u=0,a=o.length;if(v.isFunction(n))for(;u<a;u++)r=o[u],s=/^\+/.test(r),s&&(r=r.substr(1)||"*"),i=e[r]=e[r]||[],i[s?"unshift":"push"](n)}}function kn(e,n,r,i,s,o){s=s||n.dataTypes[0],o=o||{},o[s]=!0;var u,a=e[s],f=0,l=a?a.length:0,c=e===Sn;for(;f<l&&(c||!u);f++)u=a[f](n,r,i),typeof u=="string"&&(!c||o[u]?u=t:(n.dataTypes.unshift(u),u=kn(e,n,r,i,u,o)));return(c||!u)&&!o["*"]&&(u=kn(e,n,r,i,"*",o)),u}function Ln(e,n){var r,i,s=v.ajaxSettings.flatOptions||{};for(r in n)n[r]!==t&&((s[r]?e:i||(i={}))[r]=n[r]);i&&v.extend(!0,e,i)}function An(e,n,r){var i,s,o,u,a=e.contents,f=e.dataTypes,l=e.responseFields;for(s in l)s in r&&(n[l[s]]=r[s]);while(f[0]==="*")f.shift(),i===t&&(i=e.mimeType||n.getResponseHeader("content-type"));if(i)for(s in a)if(a[s]&&a[s].test(i)){f.unshift(s);break}if(f[0]in r)o=f[0];else{for(s in r){if(!f[0]||e.converters[s+" "+f[0]]){o=s;break}u||(u=s)}o=o||u}if(o)return o!==f[0]&&f.unshift(o),r[o]}function On(e,t){var n,r,i,s,o=e.dataTypes.slice(),u=o[0],a={},f=0;e.dataFilter&&(t=e.dataFilter(t,e.dataType));if(o[1])for(n in e.converters)a[n.toLowerCase()]=e.converters[n];for(;i=o[++f];)if(i!=="*"){if(u!=="*"&&u!==i){n=a[u+" "+i]||a["* "+i];if(!n)for(r in a){s=r.split(" ");if(s[1]===i){n=a[u+" "+s[0]]||a["* "+s[0]];if(n){n===!0?n=a[r]:a[r]!==!0&&(i=s[0],o.splice(f--,0,i));break}}}if(n!==!0)if(n&&e["throws"])t=n(t);else try{t=n(t)}catch(l){return{state:"parsererror",error:n?l:"No conversion from "+u+" to "+i}}}u=i}return{state:"success",data:t}}function Fn(){try{return new e.XMLHttpRequest}catch(t){}}function In(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}function $n(){return setTimeout(function(){qn=t},0),qn=v.now()}function Jn(e,t){v.each(t,function(t,n){var r=(Vn[t]||[]).concat(Vn["*"]),i=0,s=r.length;for(;i<s;i++)if(r[i].call(e,t,n))return})}function Kn(e,t,n){var r,i=0,s=0,o=Xn.length,u=v.Deferred().always(function(){delete a.elem}),a=function(){var t=qn||$n(),n=Math.max(0,f.startTime+f.duration-t),r=n/f.duration||0,i=1-r,s=0,o=f.tweens.length;for(;s<o;s++)f.tweens[s].run(i);return u.notifyWith(e,[f,i,n]),i<1&&o?n:(u.resolveWith(e,[f]),!1)},f=u.promise({elem:e,props:v.extend({},t),opts:v.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:qn||$n(),duration:n.duration,tweens:[],createTween:function(t,n,r){var i=v.Tween(e,f.opts,t,n,f.opts.specialEasing[t]||f.opts.easing);return f.tweens.push(i),i},stop:function(t){var n=0,r=t?f.tweens.length:0;for(;n<r;n++)f.tweens[n].run(1);return t?u.resolveWith(e,[f,t]):u.rejectWith(e,[f,t]),this}}),l=f.props;Qn(l,f.opts.specialEasing);for(;i<o;i++){r=Xn[i].call(f,e,l,f.opts);if(r)return r}return Jn(f,l),v.isFunction(f.opts.start)&&f.opts.start.call(e,f),v.fx.timer(v.extend(a,{anim:f,queue:f.opts.queue,elem:e})),f.progress(f.opts.progress).done(f.opts.done,f.opts.complete).fail(f.opts.fail).always(f.opts.always)}function Qn(e,t){var n,r,i,s,o;for(n in e){r=v.camelCase(n),i=t[r],s=e[n],v.isArray(s)&&(i=s[1],s=e[n]=s[0]),n!==r&&(e[r]=s,delete e[n]),o=v.cssHooks[r];if(o&&"expand"in o){s=o.expand(s),delete e[r];for(n in s)n in e||(e[n]=s[n],t[n]=i)}else t[r]=i}}function Gn(e,t,n){var r,i,s,o,u,a,f,l,c,h=this,p=e.style,d={},m=[],g=e.nodeType&&Gt(e);n.queue||(l=v._queueHooks(e,"fx"),l.unqueued==null&&(l.unqueued=0,c=l.empty.fire,l.empty.fire=function(){l.unqueued||c()}),l.unqueued++,h.always(function(){h.always(function(){l.unqueued--,v.queue(e,"fx").length||l.empty.fire()})})),e.nodeType===1&&("height"in t||"width"in t)&&(n.overflow=[p.overflow,p.overflowX,p.overflowY],v.css(e,"display")==="inline"&&v.css(e,"float")==="none"&&(!v.support.inlineBlockNeedsLayout||nn(e.nodeName)==="inline"?p.display="inline-block":p.zoom=1)),n.overflow&&(p.overflow="hidden",v.support.shrinkWrapBlocks||h.done(function(){p.overflow=n.overflow[0],p.overflowX=n.overflow[1],p.overflowY=n.overflow[2]}));for(r in t){s=t[r];if(Un.exec(s)){delete t[r],a=a||s==="toggle";if(s===(g?"hide":"show"))continue;m.push(r)}}o=m.length;if(o){u=v._data(e,"fxshow")||v._data(e,"fxshow",{}),"hidden"in u&&(g=u.hidden),a&&(u.hidden=!g),g?v(e).show():h.done(function(){v(e).hide()}),h.done(function(){var t;v.removeData(e,"fxshow",!0);for(t in d)v.style(e,t,d[t])});for(r=0;r<o;r++)i=m[r],f=h.createTween(i,g?u[i]:0),d[i]=u[i]||v.style(e,i),i in u||(u[i]=f.start,g&&(f.end=f.start,f.start=i==="width"||i==="height"?1:0))}}function Yn(e,t,n,r,i){return new Yn.prototype.init(e,t,n,r,i)}function Zn(e,t){var n,r={height:e},i=0;t=t?1:0;for(;i<4;i+=2-t)n=$t[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}function tr(e){return v.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:!1}var n,r,i=e.document,s=e.location,o=e.navigator,u=e.jQuery,a=e.$,f=Array.prototype.push,l=Array.prototype.slice,c=Array.prototype.indexOf,h=Object.prototype.toString,p=Object.prototype.hasOwnProperty,d=String.prototype.trim,v=function(e,t){return new v.fn.init(e,t,n)},m=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,g=/\S/,y=/\s+/,b=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,w=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,E=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,S=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,T=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,N=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,C=/^-ms-/,k=/-([\da-z])/gi,L=function(e,t){return(t+"").toUpperCase()},A=function(){i.addEventListener?(i.removeEventListener("DOMContentLoaded",A,!1),v.ready()):i.readyState==="complete"&&(i.detachEvent("onreadystatechange",A),v.ready())},O={};v.fn=v.prototype={constructor:v,init:function(e,n,r){var s,o,u,a;if(!e)return this;if(e.nodeType)return this.context=this[0]=e,this.length=1,this;if(typeof e=="string"){e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3?s=[null,e,null]:s=w.exec(e);if(s&&(s[1]||!n)){if(s[1])return n=n instanceof v?n[0]:n,a=n&&n.nodeType?n.ownerDocument||n:i,e=v.parseHTML(s[1],a,!0),E.test(s[1])&&v.isPlainObject(n)&&this.attr.call(e,n,!0),v.merge(this,e);o=i.getElementById(s[2]);if(o&&o.parentNode){if(o.id!==s[2])return r.find(e);this.length=1,this[0]=o}return this.context=i,this.selector=e,this}return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e)}return v.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),v.makeArray(e,this))},selector:"",jquery:"1.8.3",length:0,size:function(){return this.length},toArray:function(){return l.call(this)},get:function(e){return e==null?this.toArray():e<0?this[this.length+e]:this[e]},pushStack:function(e,t,n){var r=v.merge(this.constructor(),e);return r.prevObject=this,r.context=this.context,t==="find"?r.selector=this.selector+(this.selector?" ":"")+n:t&&(r.selector=this.selector+"."+t+"("+n+")"),r},each:function(e,t){return v.each(this,e,t)},ready:function(e){return v.ready.promise().done(e),this},eq:function(e){return e=+e,e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(l.apply(this,arguments),"slice",l.call(arguments).join(","))},map:function(e){return this.pushStack(v.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:[].sort,splice:[].splice},v.fn.init.prototype=v.fn,v.extend=v.fn.extend=function(){var e,n,r,i,s,o,u=arguments[0]||{},a=1,f=arguments.length,l=!1;typeof u=="boolean"&&(l=u,u=arguments[1]||{},a=2),typeof u!="object"&&!v.isFunction(u)&&(u={}),f===a&&(u=this,--a);for(;a<f;a++)if((e=arguments[a])!=null)for(n in e){r=u[n],i=e[n];if(u===i)continue;l&&i&&(v.isPlainObject(i)||(s=v.isArray(i)))?(s?(s=!1,o=r&&v.isArray(r)?r:[]):o=r&&v.isPlainObject(r)?r:{},u[n]=v.extend(l,o,i)):i!==t&&(u[n]=i)}return u},v.extend({noConflict:function(t){return e.$===v&&(e.$=a),t&&e.jQuery===v&&(e.jQuery=u),v},isReady:!1,readyWait:1,holdReady:function(e){e?v.readyWait++:v.ready(!0)},ready:function(e){if(e===!0?--v.readyWait:v.isReady)return;if(!i.body)return setTimeout(v.ready,1);v.isReady=!0;if(e!==!0&&--v.readyWait>0)return;r.resolveWith(i,[v]),v.fn.trigger&&v(i).trigger("ready").off("ready")},isFunction:function(e){return v.type(e)==="function"},isArray:Array.isArray||function(e){return v.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):O[h.call(e)]||"object"},isPlainObject:function(e){if(!e||v.type(e)!=="object"||e.nodeType||v.isWindow(e))return!1;try{if(e.constructor&&!p.call(e,"constructor")&&!p.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||p.call(e,r)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw new Error(e)},parseHTML:function(e,t,n){var r;return!e||typeof e!="string"?null:(typeof t=="boolean"&&(n=t,t=0),t=t||i,(r=E.exec(e))?[t.createElement(r[1])]:(r=v.buildFragment([e],t,n?null:[]),v.merge([],(r.cacheable?v.clone(r.fragment):r.fragment).childNodes)))},parseJSON:function(t){if(!t||typeof t!="string")return null;t=v.trim(t);if(e.JSON&&e.JSON.parse)return e.JSON.parse(t);if(S.test(t.replace(T,"@").replace(N,"]").replace(x,"")))return(new Function("return "+t))();v.error("Invalid JSON: "+t)},parseXML:function(n){var r,i;if(!n||typeof n!="string")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(s){r=t}return(!r||!r.documentElement||r.getElementsByTagName("parsererror").length)&&v.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&g.test(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(C,"ms-").replace(k,L)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,n,r){var i,s=0,o=e.length,u=o===t||v.isFunction(e);if(r){if(u){for(i in e)if(n.apply(e[i],r)===!1)break}else for(;s<o;)if(n.apply(e[s++],r)===!1)break}else if(u){for(i in e)if(n.call(e[i],i,e[i])===!1)break}else for(;s<o;)if(n.call(e[s],s,e[s++])===!1)break;return e},trim:d&&!d.call("\ufeff\u00a0")?function(e){return e==null?"":d.call(e)}:function(e){return e==null?"":(e+"").replace(b,"")},makeArray:function(e,t){var n,r=t||[];return e!=null&&(n=v.type(e),e.length==null||n==="string"||n==="function"||n==="regexp"||v.isWindow(e)?f.call(r,e):v.merge(r,e)),r},inArray:function(e,t,n){var r;if(t){if(c)return c.call(t,e,n);r=t.length,n=n?n<0?Math.max(0,r+n):n:0;for(;n<r;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,n){var r=n.length,i=e.length,s=0;if(typeof r=="number")for(;s<r;s++)e[i++]=n[s];else while(n[s]!==t)e[i++]=n[s++];return e.length=i,e},grep:function(e,t,n){var r,i=[],s=0,o=e.length;n=!!n;for(;s<o;s++)r=!!t(e[s],s),n!==r&&i.push(e[s]);return i},map:function(e,n,r){var i,s,o=[],u=0,a=e.length,f=e instanceof v||a!==t&&typeof a=="number"&&(a>0&&e[0]&&e[a-1]||a===0||v.isArray(e));if(f)for(;u<a;u++)i=n(e[u],u,r),i!=null&&(o[o.length]=i);else for(s in e)i=n(e[s],s,r),i!=null&&(o[o.length]=i);return o.concat.apply([],o)},guid:1,proxy:function(e,n){var r,i,s;return typeof n=="string"&&(r=e[n],n=e,e=r),v.isFunction(e)?(i=l.call(arguments,2),s=function(){return e.apply(n,i.concat(l.call(arguments)))},s.guid=e.guid=e.guid||v.guid++,s):t},access:function(e,n,r,i,s,o,u){var a,f=r==null,l=0,c=e.length;if(r&&typeof r=="object"){for(l in r)v.access(e,n,l,r[l],1,o,i);s=1}else if(i!==t){a=u===t&&v.isFunction(i),f&&(a?(a=n,n=function(e,t,n){return a.call(v(e),n)}):(n.call(e,i),n=null));if(n)for(;l<c;l++)n(e[l],r,a?i.call(e[l],l,n(e[l],r)):i,u);s=1}return s?e:f?n.call(e):c?n(e[0],r):o},now:function(){return(new Date).getTime()}}),v.ready.promise=function(t){if(!r){r=v.Deferred();if(i.readyState==="complete")setTimeout(v.ready,1);else if(i.addEventListener)i.addEventListener("DOMContentLoaded",A,!1),e.addEventListener("load",v.ready,!1);else{i.attachEvent("onreadystatechange",A),e.attachEvent("onload",v.ready);var n=!1;try{n=e.frameElement==null&&i.documentElement}catch(s){}n&&n.doScroll&&function o(){if(!v.isReady){try{n.doScroll("left")}catch(e){return setTimeout(o,50)}v.ready()}}()}}return r.promise(t)},v.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(e,t){O["[object "+t+"]"]=t.toLowerCase()}),n=v(i);var M={};v.Callbacks=function(e){e=typeof e=="string"?M[e]||_(e):v.extend({},e);var n,r,i,s,o,u,a=[],f=!e.once&&[],l=function(t){n=e.memory&&t,r=!0,u=s||0,s=0,o=a.length,i=!0;for(;a&&u<o;u++)if(a[u].apply(t[0],t[1])===!1&&e.stopOnFalse){n=!1;break}i=!1,a&&(f?f.length&&l(f.shift()):n?a=[]:c.disable())},c={add:function(){if(a){var t=a.length;(function r(t){v.each(t,function(t,n){var i=v.type(n);i==="function"?(!e.unique||!c.has(n))&&a.push(n):n&&n.length&&i!=="string"&&r(n)})})(arguments),i?o=a.length:n&&(s=t,l(n))}return this},remove:function(){return a&&v.each(arguments,function(e,t){var n;while((n=v.inArray(t,a,n))>-1)a.splice(n,1),i&&(n<=o&&o--,n<=u&&u--)}),this},has:function(e){return v.inArray(e,a)>-1},empty:function(){return a=[],this},disable:function(){return a=f=n=t,this},disabled:function(){return!a},lock:function(){return f=t,n||c.disable(),this},locked:function(){return!f},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],a&&(!r||f)&&(i?f.push(t):l(t)),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},v.extend({Deferred:function(e){var t=[["resolve","done",v.Callbacks("once memory"),"resolved"],["reject","fail",v.Callbacks("once memory"),"rejected"],["notify","progress",v.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return v.Deferred(function(n){v.each(t,function(t,r){var s=r[0],o=e[t];i[r[1]](v.isFunction(o)?function(){var e=o.apply(this,arguments);e&&v.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[s+"With"](this===i?n:this,[e])}:n[s])}),e=null}).promise()},promise:function(e){return e!=null?v.extend(e,r):r}},i={};return r.pipe=r.then,v.each(t,function(e,s){var o=s[2],u=s[3];r[s[1]]=o.add,u&&o.add(function(){n=u},t[e^1][2].disable,t[2][2].lock),i[s[0]]=o.fire,i[s[0]+"With"]=o.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=l.call(arguments),r=n.length,i=r!==1||e&&v.isFunction(e.promise)?r:0,s=i===1?e:v.Deferred(),o=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?l.call(arguments):r,n===u?s.notifyWith(t,n):--i||s.resolveWith(t,n)}},u,a,f;if(r>1){u=new Array(r),a=new Array(r),f=new Array(r);for(;t<r;t++)n[t]&&v.isFunction(n[t].promise)?n[t].promise().done(o(t,f,n)).fail(s.reject).progress(o(t,a,u)):--i}return i||s.resolveWith(f,n),s.promise()}}),v.support=function(){var t,n,r,s,o,u,a,f,l,c,h,p=i.createElement("div");p.setAttribute("className","t"),p.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",n=p.getElementsByTagName("*"),r=p.getElementsByTagName("a")[0];if(!n||!r||!n.length)return{};s=i.createElement("select"),o=s.appendChild(i.createElement("option")),u=p.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(r.getAttribute("style")),hrefNormalized:r.getAttribute("href")==="/a",opacity:/^0.5/.test(r.style.opacity),cssFloat:!!r.style.cssFloat,checkOn:u.value==="on",optSelected:o.selected,getSetAttribute:p.className!=="t",enctype:!!i.createElement("form").enctype,html5Clone:i.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",boxModel:i.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},u.checked=!0,t.noCloneChecked=u.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!o.disabled;try{delete p.test}catch(d){t.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",h=function(){t.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick"),p.detachEvent("onclick",h)),u=i.createElement("input"),u.value="t",u.setAttribute("type","radio"),t.radioValue=u.value==="t",u.setAttribute("checked","checked"),u.setAttribute("name","t"),p.appendChild(u),a=i.createDocumentFragment(),a.appendChild(p.lastChild),t.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,t.appendChecked=u.checked,a.removeChild(u),a.appendChild(p);if(p.attachEvent)for(l in{submit:!0,change:!0,focusin:!0})f="on"+l,c=f in p,c||(p.setAttribute(f,"return;"),c=typeof p[f]=="function"),t[l+"Bubbles"]=c;return v(function(){var n,r,s,o,u="padding:0;margin:0;border:0;display:block;overflow:hidden;",a=i.getElementsByTagName("body")[0];if(!a)return;n=i.createElement("div"),n.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",a.insertBefore(n,a.firstChild),r=i.createElement("div"),n.appendChild(r),r.innerHTML="<table><tr><td></td><td>t</td></tr></table>",s=r.getElementsByTagName("td"),s[0].style.cssText="padding:0;margin:0;border:0;display:none",c=s[0].offsetHeight===0,s[0].style.display="",s[1].style.display="none",t.reliableHiddenOffsets=c&&s[0].offsetHeight===0,r.innerHTML="",r.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%;",t.boxSizing=r.offsetWidth===4,t.doesNotIncludeMarginInBodyOffset=a.offsetTop!==1,e.getComputedStyle&&(t.pixelPosition=(e.getComputedStyle(r,null)||{}).top!=="1%",t.boxSizingReliable=(e.getComputedStyle(r,null)||{width:"4px"}).width==="4px",o=i.createElement("div"),o.style.cssText=r.style.cssText=u,o.style.marginRight=o.style.width="0",r.style.width="1px",r.appendChild(o),t.reliableMarginRight=!parseFloat((e.getComputedStyle(o,null)||{}).marginRight)),typeof r.style.zoom!="undefined"&&(r.innerHTML="",r.style.cssText=u+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=r.offsetWidth===3,r.style.display="block",r.style.overflow="visible",r.innerHTML="<div></div>",r.firstChild.style.width="5px",t.shrinkWrapBlocks=r.offsetWidth!==3,n.style.zoom=1),a.removeChild(n),n=r=s=o=null}),a.removeChild(p),n=r=s=o=u=a=p=null,t}();var D=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;v.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(v.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?v.cache[e[v.expando]]:e[v.expando],!!e&&!B(e)},data:function(e,n,r,i){if(!v.acceptData(e))return;var s,o,u=v.expando,a=typeof n=="string",f=e.nodeType,l=f?v.cache:e,c=f?e[u]:e[u]&&u;if((!c||!l[c]||!i&&!l[c].data)&&a&&r===t)return;c||(f?e[u]=c=v.deletedIds.pop()||v.guid++:c=u),l[c]||(l[c]={},f||(l[c].toJSON=v.noop));if(typeof n=="object"||typeof n=="function")i?l[c]=v.extend(l[c],n):l[c].data=v.extend(l[c].data,n);return s=l[c],i||(s.data||(s.data={}),s=s.data),r!==t&&(s[v.camelCase(n)]=r),a?(o=s[n],o==null&&(o=s[v.camelCase(n)])):o=s,o},removeData:function(e,t,n){if(!v.acceptData(e))return;var r,i,s,o=e.nodeType,u=o?v.cache:e,a=o?e[v.expando]:v.expando;if(!u[a])return;if(t){r=n?u[a]:u[a].data;if(r){v.isArray(t)||(t in r?t=[t]:(t=v.camelCase(t),t in r?t=[t]:t=t.split(" ")));for(i=0,s=t.length;i<s;i++)delete r[t[i]];if(!(n?B:v.isEmptyObject)(r))return}}if(!n){delete u[a].data;if(!B(u[a]))return}o?v.cleanData([e],!0):v.support.deleteExpando||u!=u.window?delete u[a]:u[a]=null},_data:function(e,t,n){return v.data(e,t,n,!0)},acceptData:function(e){var t=e.nodeName&&v.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),v.fn.extend({data:function(e,n){var r,i,s,o,u,a=this[0],f=0,l=null;if(e===t){if(this.length){l=v.data(a);if(a.nodeType===1&&!v._data(a,"parsedAttrs")){s=a.attributes;for(u=s.length;f<u;f++)o=s[f].name,o.indexOf("data-")||(o=v.camelCase(o.substring(5)),H(a,o,l[o]));v._data(a,"parsedAttrs",!0)}}return l}return typeof e=="object"?this.each(function(){v.data(this,e)}):(r=e.split(".",2),r[1]=r[1]?"."+r[1]:"",i=r[1]+"!",v.access(this,function(n){if(n===t)return l=this.triggerHandler("getData"+i,[r[0]]),l===t&&a&&(l=v.data(a,e),l=H(a,e,l)),l===t&&r[1]?this.data(r[0]):l;r[1]=n,this.each(function(){var t=v(this);t.triggerHandler("setData"+i,r),v.data(this,e,n),t.triggerHandler("changeData"+i,r)})},null,n,arguments.length>1,null,!1))},removeData:function(e){return this.each(function(){v.removeData(this,e)})}}),v.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=v._data(e,t),n&&(!r||v.isArray(n)?r=v._data(e,t,v.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=v.queue(e,t),r=n.length,i=n.shift(),s=v._queueHooks(e,t),o=function(){v.dequeue(e,t)};i==="inprogress"&&(i=n.shift(),r--),i&&(t==="fx"&&n.unshift("inprogress"),delete s.stop,i.call(e,o,s)),!r&&s&&s.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return v._data(e,n)||v._data(e,n,{empty:v.Callbacks("once memory").add(function(){v.removeData(e,t+"queue",!0),v.removeData(e,n,!0)})})}}),v.fn.extend({queue:function(e,n){var r=2;return typeof e!="string"&&(n=e,e="fx",r--),arguments.length<r?v.queue(this[0],e):n===t?this:this.each(function(){var t=v.queue(this,e,n);v._queueHooks(this,e),e==="fx"&&t[0]!=="inprogress"&&v.dequeue(this,e)})},dequeue:function(e){return this.each(function(){v.dequeue(this,e)})},delay:function(e,t){return e=v.fx?v.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,s=v.Deferred(),o=this,u=this.length,a=function(){--i||s.resolveWith(o,[o])};typeof e!="string"&&(n=e,e=t),e=e||"fx";while(u--)r=v._data(o[u],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(a));return a(),s.promise(n)}});var j,F,I,q=/[\t\r\n]/g,R=/\r/g,U=/^(?:button|input)$/i,z=/^(?:button|input|object|select|textarea)$/i,W=/^a(?:rea|)$/i,X=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,V=v.support.getSetAttribute;v.fn.extend({attr:function(e,t){return v.access(this,v.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){v.removeAttr(this,e)})},prop:function(e,t){return v.access(this,v.prop,e,t,arguments.length>1)},removeProp:function(e){return e=v.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,s,o,u;if(v.isFunction(e))return this.each(function(t){v(this).addClass(e.call(this,t,this.className))});if(e&&typeof e=="string"){t=e.split(y);for(n=0,r=this.length;n<r;n++){i=this[n];if(i.nodeType===1)if(!i.className&&t.length===1)i.className=e;else{s=" "+i.className+" ";for(o=0,u=t.length;o<u;o++)s.indexOf(" "+t[o]+" ")<0&&(s+=t[o]+" ");i.className=v.trim(s)}}}return this},removeClass:function(e){var n,r,i,s,o,u,a;if(v.isFunction(e))return this.each(function(t){v(this).removeClass(e.call(this,t,this.className))});if(e&&typeof e=="string"||e===t){n=(e||"").split(y);for(u=0,a=this.length;u<a;u++){i=this[u];if(i.nodeType===1&&i.className){r=(" "+i.className+" ").replace(q," ");for(s=0,o=n.length;s<o;s++)while(r.indexOf(" "+n[s]+" ")>=0)r=r.replace(" "+n[s]+" "," ");i.className=e?v.trim(r):""}}}return this},toggleClass:function(e,t){var n=typeof e,r=typeof t=="boolean";return v.isFunction(e)?this.each(function(n){v(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if(n==="string"){var i,s=0,o=v(this),u=t,a=e.split(y);while(i=a[s++])u=r?u:!o.hasClass(i),o[u?"addClass":"removeClass"](i)}else if(n==="undefined"||n==="boolean")this.className&&v._data(this,"__className__",this.className),this.className=this.className||e===!1?"":v._data(this,"__className__")||""})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;n<r;n++)if(this[n].nodeType===1&&(" "+this[n].className+" ").replace(q," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,s=this[0];if(!arguments.length){if(s)return n=v.valHooks[s.type]||v.valHooks[s.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(s,"value"))!==t?r:(r=s.value,typeof r=="string"?r.replace(R,""):r==null?"":r);return}return i=v.isFunction(e),this.each(function(r){var s,o=v(this);if(this.nodeType!==1)return;i?s=e.call(this,r,o.val()):s=e,s==null?s="":typeof s=="number"?s+="":v.isArray(s)&&(s=v.map(s,function(e){return e==null?"":e+""})),n=v.valHooks[this.type]||v.valHooks[this.nodeName.toLowerCase()];if(!n||!("set"in n)||n.set(this,s,"value")===t)this.value=s})}}),v.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,s=e.type==="select-one"||i<0,o=s?null:[],u=s?i+1:r.length,a=i<0?u:s?i:0;for(;a<u;a++){n=r[a];if((n.selected||a===i)&&(v.support.optDisabled?!n.disabled:n.getAttribute("disabled")===null)&&(!n.parentNode.disabled||!v.nodeName(n.parentNode,"optgroup"))){t=v(n).val();if(s)return t;o.push(t)}}return o},set:function(e,t){var n=v.makeArray(t);return v(e).find("option").each(function(){this.selected=v.inArray(v(this).val(),n)>=0}),n.length||(e.selectedIndex=-1),n}}},attrFn:{},attr:function(e,n,r,i){var s,o,u,a=e.nodeType;if(!e||a===3||a===8||a===2)return;if(i&&v.isFunction(v.fn[n]))return v(e)[n](r);if(typeof e.getAttribute=="undefined")return v.prop(e,n,r);u=a!==1||!v.isXMLDoc(e),u&&(n=n.toLowerCase(),o=v.attrHooks[n]||(X.test(n)?F:j));if(r!==t){if(r===null){v.removeAttr(e,n);return}return o&&"set"in o&&u&&(s=o.set(e,r,n))!==t?s:(e.setAttribute(n,r+""),r)}return o&&"get"in o&&u&&(s=o.get(e,n))!==null?s:(s=e.getAttribute(n),s===null?t:s)},removeAttr:function(e,t){var n,r,i,s,o=0;if(t&&e.nodeType===1){r=t.split(y);for(;o<r.length;o++)i=r[o],i&&(n=v.propFix[i]||i,s=X.test(i),s||v.attr(e,i,""),e.removeAttribute(V?i:n),s&&n in e&&(e[n]=!1))}},attrHooks:{type:{set:function(e,t){if(U.test(e.nodeName)&&e.parentNode)v.error("type property can't be changed");else if(!v.support.radioValue&&t==="radio"&&v.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}},value:{get:function(e,t){return j&&v.nodeName(e,"button")?j.get(e,t):t in e?e.value:null},set:function(e,t,n){if(j&&v.nodeName(e,"button"))return j.set(e,t,n);e.value=t}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(e,n,r){var i,s,o,u=e.nodeType;if(!e||u===3||u===8||u===2)return;return o=u!==1||!v.isXMLDoc(e),o&&(n=v.propFix[n]||n,s=v.propHooks[n]),r!==t?s&&"set"in s&&(i=s.set(e,r,n))!==t?i:e[n]=r:s&&"get"in s&&(i=s.get(e,n))!==null?i:e[n]},propHooks:{tabIndex:{get:function(e){var n=e.getAttributeNode("tabindex");return n&&n.specified?parseInt(n.value,10):z.test(e.nodeName)||W.test(e.nodeName)&&e.href?0:t}}}}),F={get:function(e,n){var r,i=v.prop(e,n);return i===!0||typeof i!="boolean"&&(r=e.getAttributeNode(n))&&r.nodeValue!==!1?n.toLowerCase():t},set:function(e,t,n){var r;return t===!1?v.removeAttr(e,n):(r=v.propFix[n]||n,r in e&&(e[r]=!0),e.setAttribute(n,n.toLowerCase())),n}},V||(I={name:!0,id:!0,coords:!0},j=v.valHooks.button={get:function(e,n){var r;return r=e.getAttributeNode(n),r&&(I[n]?r.value!=="":r.specified)?r.value:t},set:function(e,t,n){var r=e.getAttributeNode(n);return r||(r=i.createAttribute(n),e.setAttributeNode(r)),r.value=t+""}},v.each(["width","height"],function(e,t){v.attrHooks[t]=v.extend(v.attrHooks[t],{set:function(e,n){if(n==="")return e.setAttribute(t,"auto"),n}})}),v.attrHooks.contenteditable={get:j.get,set:function(e,t,n){t===""&&(t="false"),j.set(e,t,n)}}),v.support.hrefNormalized||v.each(["href","src","width","height"],function(e,n){v.attrHooks[n]=v.extend(v.attrHooks[n],{get:function(e){var r=e.getAttribute(n,2);return r===null?t:r}})}),v.support.style||(v.attrHooks.style={get:function(e){return e.style.cssText.toLowerCase()||t},set:function(e,t){return e.style.cssText=t+""}}),v.support.optSelected||(v.propHooks.selected=v.extend(v.propHooks.selected,{get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}})),v.support.enctype||(v.propFix.enctype="encoding"),v.support.checkOn||v.each(["radio","checkbox"],function(){v.valHooks[this]={get:function(e){return e.getAttribute("value")===null?"on":e.value}}}),v.each(["radio","checkbox"],function(){v.valHooks[this]=v.extend(v.valHooks[this],{set:function(e,t){if(v.isArray(t))return e.checked=v.inArray(v(e).val(),t)>=0}})});var $=/^(?:textarea|input|select)$/i,J=/^([^\.]*|)(?:\.(.+)|)$/,K=/(?:^|\s)hover(\.\S+|)\b/,Q=/^key/,G=/^(?:mouse|contextmenu)|click/,Y=/^(?:focusinfocus|focusoutblur)$/,Z=function(e){return v.event.special.hover?e:e.replace(K,"mouseenter$1 mouseleave$1")};v.event={add:function(e,n,r,i,s){var o,u,a,f,l,c,h,p,d,m,g;if(e.nodeType===3||e.nodeType===8||!n||!r||!(o=v._data(e)))return;r.handler&&(d=r,r=d.handler,s=d.selector),r.guid||(r.guid=v.guid++),a=o.events,a||(o.events=a={}),u=o.handle,u||(o.handle=u=function(e){return typeof v=="undefined"||!!e&&v.event.triggered===e.type?t:v.event.dispatch.apply(u.elem,arguments)},u.elem=e),n=v.trim(Z(n)).split(" ");for(f=0;f<n.length;f++){l=J.exec(n[f])||[],c=l[1],h=(l[2]||"").split(".").sort(),g=v.event.special[c]||{},c=(s?g.delegateType:g.bindType)||c,g=v.event.special[c]||{},p=v.extend({type:c,origType:l[1],data:i,handler:r,guid:r.guid,selector:s,needsContext:s&&v.expr.match.needsContext.test(s),namespace:h.join(".")},d),m=a[c];if(!m){m=a[c]=[],m.delegateCount=0;if(!g.setup||g.setup.call(e,i,h,u)===!1)e.addEventListener?e.addEventListener(c,u,!1):e.attachEvent&&e.attachEvent("on"+c,u)}g.add&&(g.add.call(e,p),p.handler.guid||(p.handler.guid=r.guid)),s?m.splice(m.delegateCount++,0,p):m.push(p),v.event.global[c]=!0}e=null},global:{},remove:function(e,t,n,r,i){var s,o,u,a,f,l,c,h,p,d,m,g=v.hasData(e)&&v._data(e);if(!g||!(h=g.events))return;t=v.trim(Z(t||"")).split(" ");for(s=0;s<t.length;s++){o=J.exec(t[s])||[],u=a=o[1],f=o[2];if(!u){for(u in h)v.event.remove(e,u+t[s],n,r,!0);continue}p=v.event.special[u]||{},u=(r?p.delegateType:p.bindType)||u,d=h[u]||[],l=d.length,f=f?new RegExp("(^|\\.)"+f.split(".").sort().join("\\.(?:.*\\.|)")+"(\\.|$)"):null;for(c=0;c<d.length;c++)m=d[c],(i||a===m.origType)&&(!n||n.guid===m.guid)&&(!f||f.test(m.namespace))&&(!r||r===m.selector||r==="**"&&m.selector)&&(d.splice(c--,1),m.selector&&d.delegateCount--,p.remove&&p.remove.call(e,m));d.length===0&&l!==d.length&&((!p.teardown||p.teardown.call(e,f,g.handle)===!1)&&v.removeEvent(e,u,g.handle),delete h[u])}v.isEmptyObject(h)&&(delete g.handle,v.removeData(e,"events",!0))},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(n,r,s,o){if(!s||s.nodeType!==3&&s.nodeType!==8){var u,a,f,l,c,h,p,d,m,g,y=n.type||n,b=[];if(Y.test(y+v.event.triggered))return;y.indexOf("!")>=0&&(y=y.slice(0,-1),a=!0),y.indexOf(".")>=0&&(b=y.split("."),y=b.shift(),b.sort());if((!s||v.event.customEvent[y])&&!v.event.global[y])return;n=typeof n=="object"?n[v.expando]?n:new v.Event(y,n):new v.Event(y),n.type=y,n.isTrigger=!0,n.exclusive=a,n.namespace=b.join("."),n.namespace_re=n.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,h=y.indexOf(":")<0?"on"+y:"";if(!s){u=v.cache;for(f in u)u[f].events&&u[f].events[y]&&v.event.trigger(n,r,u[f].handle.elem,!0);return}n.result=t,n.target||(n.target=s),r=r!=null?v.makeArray(r):[],r.unshift(n),p=v.event.special[y]||{};if(p.trigger&&p.trigger.apply(s,r)===!1)return;m=[[s,p.bindType||y]];if(!o&&!p.noBubble&&!v.isWindow(s)){g=p.delegateType||y,l=Y.test(g+y)?s:s.parentNode;for(c=s;l;l=l.parentNode)m.push([l,g]),c=l;c===(s.ownerDocument||i)&&m.push([c.defaultView||c.parentWindow||e,g])}for(f=0;f<m.length&&!n.isPropagationStopped();f++)l=m[f][0],n.type=m[f][1],d=(v._data(l,"events")||{})[n.type]&&v._data(l,"handle"),d&&d.apply(l,r),d=h&&l[h],d&&v.acceptData(l)&&d.apply&&d.apply(l,r)===!1&&n.preventDefault();return n.type=y,!o&&!n.isDefaultPrevented()&&(!p._default||p._default.apply(s.ownerDocument,r)===!1)&&(y!=="click"||!v.nodeName(s,"a"))&&v.acceptData(s)&&h&&s[y]&&(y!=="focus"&&y!=="blur"||n.target.offsetWidth!==0)&&!v.isWindow(s)&&(c=s[h],c&&(s[h]=null),v.event.triggered=y,s[y](),v.event.triggered=t,c&&(s[h]=c)),n.result}return},dispatch:function(n){n=v.event.fix(n||e.event);var r,i,s,o,u,a,f,c,h,p,d=(v._data(this,"events")||{})[n.type]||[],m=d.delegateCount,g=l.call(arguments),y=!n.exclusive&&!n.namespace,b=v.event.special[n.type]||{},w=[];g[0]=n,n.delegateTarget=this;if(b.preDispatch&&b.preDispatch.call(this,n)===!1)return;if(m&&(!n.button||n.type!=="click"))for(s=n.target;s!=this;s=s.parentNode||this)if(s.disabled!==!0||n.type!=="click"){u={},f=[];for(r=0;r<m;r++)c=d[r],h=c.selector,u[h]===t&&(u[h]=c.needsContext?v(h,this).index(s)>=0:v.find(h,this,null,[s]).length),u[h]&&f.push(c);f.length&&w.push({elem:s,matches:f})}d.length>m&&w.push({elem:this,matches:d.slice(m)});for(r=0;r<w.length&&!n.isPropagationStopped();r++){a=w[r],n.currentTarget=a.elem;for(i=0;i<a.matches.length&&!n.isImmediatePropagationStopped();i++){c=a.matches[i];if(y||!n.namespace&&!c.namespace||n.namespace_re&&n.namespace_re.test(c.namespace))n.data=c.data,n.handleObj=c,o=((v.event.special[c.origType]||{}).handle||c.handler).apply(a.elem,g),o!==t&&(n.result=o,o===!1&&(n.preventDefault(),n.stopPropagation()))}}return b.postDispatch&&b.postDispatch.call(this,n),n.result},props:"attrChange attrName relatedNode srcElement 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 e.which==null&&(e.which=t.charCode!=null?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,s,o,u=n.button,a=n.fromElement;return e.pageX==null&&n.clientX!=null&&(r=e.target.ownerDocument||i,s=r.documentElement,o=r.body,e.pageX=n.clientX+(s&&s.scrollLeft||o&&o.scrollLeft||0)-(s&&s.clientLeft||o&&o.clientLeft||0),e.pageY=n.clientY+(s&&s.scrollTop||o&&o.scrollTop||0)-(s&&s.clientTop||o&&o.clientTop||0)),!e.relatedTarget&&a&&(e.relatedTarget=a===e.target?n.toElement:a),!e.which&&u!==t&&(e.which=u&1?1:u&2?3:u&4?2:0),e}},fix:function(e){if(e[v.expando])return e;var t,n,r=e,s=v.event.fixHooks[e.type]||{},o=s.props?this.props.concat(s.props):this.props;e=v.Event(r);for(t=o.length;t;)n=o[--t],e[n]=r[n];return e.target||(e.target=r.srcElement||i),e.target.nodeType===3&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,s.filter?s.filter(e,r):e},special:{load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(e,t,n){v.isWindow(this)&&(this.onbeforeunload=n)},teardown:function(e,t){this.onbeforeunload===t&&(this.onbeforeunload=null)}}},simulate:function(e,t,n,r){var i=v.extend(new v.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?v.event.trigger(i,null,t):v.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},v.event.handle=v.event.dispatch,v.removeEvent=i.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]=="undefined"&&(e[r]=null),e.detachEvent(r,n))},v.Event=function(e,t){if(!(this instanceof v.Event))return new v.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.getPreventDefault()?tt:et):this.type=e,t&&v.extend(this,t),this.timeStamp=e&&e.timeStamp||v.now(),this[v.expando]=!0},v.Event.prototype={preventDefault:function(){this.isDefaultPrevented=tt;var e=this.originalEvent;if(!e)return;e.preventDefault?e.preventDefault():e.returnValue=!1},stopPropagation:function(){this.isPropagationStopped=tt;var e=this.originalEvent;if(!e)return;e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=tt,this.stopPropagation()},isDefaultPrevented:et,isPropagationStopped:et,isImmediatePropagationStopped:et},v.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){v.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,s=e.handleObj,o=s.selector;if(!i||i!==r&&!v.contains(r,i))e.type=s.origType,n=s.handler.apply(this,arguments),e.type=t;return n}}}),v.support.submitBubbles||(v.event.special.submit={setup:function(){if(v.nodeName(this,"form"))return!1;v.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=v.nodeName(n,"input")||v.nodeName(n,"button")?n.form:t;r&&!v._data(r,"_submit_attached")&&(v.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),v._data(r,"_submit_attached",!0))})},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&v.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){if(v.nodeName(this,"form"))return!1;v.event.remove(this,"._submit")}}),v.support.changeBubbles||(v.event.special.change={setup:function(){if($.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")v.event.add(this,"propertychange._change",function(e){e.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),v.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),v.event.simulate("change",this,e,!0)});return!1}v.event.add(this,"beforeactivate._change",function(e){var t=e.target;$.test(t.nodeName)&&!v._data(t,"_change_attached")&&(v.event.add(t,"change._change",function(e){this.parentNode&&!e.isSimulated&&!e.isTrigger&&v.event.simulate("change",this.parentNode,e,!0)}),v._data(t,"_change_attached",!0))})},handle:function(e){var t=e.target;if(this!==t||e.isSimulated||e.isTrigger||t.type!=="radio"&&t.type!=="checkbox")return e.handleObj.handler.apply(this,arguments)},teardown:function(){return v.event.remove(this,"._change"),!$.test(this.nodeName)}}),v.support.focusinBubbles||v.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){v.event.simulate(t,e.target,v.event.fix(e),!0)};v.event.special[t]={setup:function(){n++===0&&i.addEventListener(e,r,!0)},teardown:function(){--n===0&&i.removeEventListener(e,r,!0)}}}),v.fn.extend({on:function(e,n,r,i,s){var o,u;if(typeof e=="object"){typeof n!="string"&&(r=r||n,n=t);for(u in e)this.on(u,n,r,e[u],s);return this}r==null&&i==null?(i=n,r=n=t):i==null&&(typeof n=="string"?(i=r,r=t):(i=r,r=n,n=t));if(i===!1)i=et;else if(!i)return this;return s===1&&(o=i,i=function(e){return v().off(e),o.apply(this,arguments)},i.guid=o.guid||(o.guid=v.guid++)),this.each(function(){v.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,s;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,v(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if(typeof e=="object"){for(s in e)this.off(s,n,e[s]);return this}if(n===!1||typeof n=="function")r=n,n=t;return r===!1&&(r=et),this.each(function(){v.event.remove(this,e,r,n)})},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},live:function(e,t,n){return v(this.context).on(e,this.selector,t,n),this},die:function(e,t){return v(this.context).off(e,this.selector||"**",t),this},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return arguments.length===1?this.off(e,"**"):this.off(t,e||"**",n)},trigger:function(e,t){return this.each(function(){v.event.trigger(e,t,this)})},triggerHandler:function(e,t){if(this[0])return v.event.trigger(e,t,this[0],!0)},toggle:function(e){var t=arguments,n=e.guid||v.guid++,r=0,i=function(n){var i=(v._data(this,"lastToggle"+e.guid)||0)%r;return v._data(this,"lastToggle"+e.guid,i+1),n.preventDefault(),t[i].apply(this,arguments)||!1};i.guid=n;while(r<t.length)t[r++].guid=n;return this.click(i)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),v.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){v.fn[t]=function(e,n){return n==null&&(n=e,e=null),arguments.length>0?this.on(t,null,e,n):this.trigger(t)},Q.test(t)&&(v.event.fixHooks[t]=v.event.keyHooks),G.test(t)&&(v.event.fixHooks[t]=v.event.mouseHooks)}),function(e,t){function nt(e,t,n,r){n=n||[],t=t||g;var i,s,a,f,l=t.nodeType;if(!e||typeof e!="string")return n;if(l!==1&&l!==9)return[];a=o(t);if(!a&&!r)if(i=R.exec(e))if(f=i[1]){if(l===9){s=t.getElementById(f);if(!s||!s.parentNode)return n;if(s.id===f)return n.push(s),n}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(f))&&u(t,s)&&s.id===f)return n.push(s),n}else{if(i[2])return S.apply(n,x.call(t.getElementsByTagName(e),0)),n;if((f=i[3])&&Z&&t.getElementsByClassName)return S.apply(n,x.call(t.getElementsByClassName(f),0)),n}return vt(e.replace(j,"$1"),t,n,r,a)}function rt(e){return function(t){var n=t.nodeName.toLowerCase();return n==="input"&&t.type===e}}function it(e){return function(t){var n=t.nodeName.toLowerCase();return(n==="input"||n==="button")&&t.type===e}}function st(e){return N(function(t){return t=+t,N(function(n,r){var i,s=e([],n.length,t),o=s.length;while(o--)n[i=s[o]]&&(n[i]=!(r[i]=n[i]))})})}function ot(e,t,n){if(e===t)return n;var r=e.nextSibling;while(r){if(r===t)return-1;r=r.nextSibling}return 1}function ut(e,t){var n,r,s,o,u,a,f,l=L[d][e+" "];if(l)return t?0:l.slice(0);u=e,a=[],f=i.preFilter;while(u){if(!n||(r=F.exec(u)))r&&(u=u.slice(r[0].length)||u),a.push(s=[]);n=!1;if(r=I.exec(u))s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=r[0].replace(j," ");for(o in i.filter)(r=J[o].exec(u))&&(!f[o]||(r=f[o](r)))&&(s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=o,n.matches=r);if(!n)break}return t?u.length:u?nt.error(e):L(e,a).slice(0)}function at(e,t,r){var i=t.dir,s=r&&t.dir==="parentNode",o=w++;return t.first?function(t,n,r){while(t=t[i])if(s||t.nodeType===1)return e(t,n,r)}:function(t,r,u){if(!u){var a,f=b+" "+o+" ",l=f+n;while(t=t[i])if(s||t.nodeType===1){if((a=t[d])===l)return t.sizset;if(typeof a=="string"&&a.indexOf(f)===0){if(t.sizset)return t}else{t[d]=l;if(e(t,r,u))return t.sizset=!0,t;t.sizset=!1}}}else while(t=t[i])if(s||t.nodeType===1)if(e(t,r,u))return t}}function ft(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 lt(e,t,n,r,i){var s,o=[],u=0,a=e.length,f=t!=null;for(;u<a;u++)if(s=e[u])if(!n||n(s,r,i))o.push(s),f&&t.push(u);return o}function ct(e,t,n,r,i,s){return r&&!r[d]&&(r=ct(r)),i&&!i[d]&&(i=ct(i,s)),N(function(s,o,u,a){var f,l,c,h=[],p=[],d=o.length,v=s||dt(t||"*",u.nodeType?[u]:u,[]),m=e&&(s||!t)?lt(v,h,e,u,a):v,g=n?i||(s?e:d||r)?[]:o:m;n&&n(m,g,u,a);if(r){f=lt(g,p),r(f,[],u,a),l=f.length;while(l--)if(c=f[l])g[p[l]]=!(m[p[l]]=c)}if(s){if(i||e){if(i){f=[],l=g.length;while(l--)(c=g[l])&&f.push(m[l]=c);i(null,g=[],f,a)}l=g.length;while(l--)(c=g[l])&&(f=i?T.call(s,c):h[l])>-1&&(s[f]=!(o[f]=c))}}else g=lt(g===o?g.splice(d,g.length):g),i?i(null,o,g,a):S.apply(o,g)})}function ht(e){var t,n,r,s=e.length,o=i.relative[e[0].type],u=o||i.relative[" "],a=o?1:0,f=at(function(e){return e===t},u,!0),l=at(function(e){return T.call(t,e)>-1},u,!0),h=[function(e,n,r){return!o&&(r||n!==c)||((t=n).nodeType?f(e,n,r):l(e,n,r))}];for(;a<s;a++)if(n=i.relative[e[a].type])h=[at(ft(h),n)];else{n=i.filter[e[a].type].apply(null,e[a].matches);if(n[d]){r=++a;for(;r<s;r++)if(i.relative[e[r].type])break;return ct(a>1&&ft(h),a>1&&e.slice(0,a-1).join("").replace(j,"$1"),n,a<r&&ht(e.slice(a,r)),r<s&&ht(e=e.slice(r)),r<s&&e.join(""))}h.push(n)}return ft(h)}function pt(e,t){var r=t.length>0,s=e.length>0,o=function(u,a,f,l,h){var p,d,v,m=[],y=0,w="0",x=u&&[],T=h!=null,N=c,C=u||s&&i.find.TAG("*",h&&a.parentNode||a),k=b+=N==null?1:Math.E;T&&(c=a!==g&&a,n=o.el);for(;(p=C[w])!=null;w++){if(s&&p){for(d=0;v=e[d];d++)if(v(p,a,f)){l.push(p);break}T&&(b=k,n=++o.el)}r&&((p=!v&&p)&&y--,u&&x.push(p))}y+=w;if(r&&w!==y){for(d=0;v=t[d];d++)v(x,m,a,f);if(u){if(y>0)while(w--)!x[w]&&!m[w]&&(m[w]=E.call(l));m=lt(m)}S.apply(l,m),T&&!u&&m.length>0&&y+t.length>1&&nt.uniqueSort(l)}return T&&(b=k,c=N),x};return o.el=0,r?N(o):o}function dt(e,t,n){var r=0,i=t.length;for(;r<i;r++)nt(e,t[r],n);return n}function vt(e,t,n,r,s){var o,u,f,l,c,h=ut(e),p=h.length;if(!r&&h.length===1){u=h[0]=h[0].slice(0);if(u.length>2&&(f=u[0]).type==="ID"&&t.nodeType===9&&!s&&i.relative[u[1].type]){t=i.find.ID(f.matches[0].replace($,""),t,s)[0];if(!t)return n;e=e.slice(u.shift().length)}for(o=J.POS.test(e)?-1:u.length-1;o>=0;o--){f=u[o];if(i.relative[l=f.type])break;if(c=i.find[l])if(r=c(f.matches[0].replace($,""),z.test(u[0].type)&&t.parentNode||t,s)){u.splice(o,1),e=r.length&&u.join("");if(!e)return S.apply(n,x.call(r,0)),n;break}}}return a(e,h)(r,t,s,n,z.test(e)),n}function mt(){}var n,r,i,s,o,u,a,f,l,c,h=!0,p="undefined",d=("sizcache"+Math.random()).replace(".",""),m=String,g=e.document,y=g.documentElement,b=0,w=0,E=[].pop,S=[].push,x=[].slice,T=[].indexOf||function(e){var t=0,n=this.length;for(;t<n;t++)if(this[t]===e)return t;return-1},N=function(e,t){return e[d]=t==null||t,e},C=function(){var e={},t=[];return N(function(n,r){return t.push(n)>i.cacheLength&&delete e[t.shift()],e[n+" "]=r},e)},k=C(),L=C(),A=C(),O="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",_=M.replace("w","w#"),D="([*^$|!~]?=)",P="\\["+O+"*("+M+")"+O+"*(?:"+D+O+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+_+")|)|)"+O+"*\\]",H=":("+M+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+P+")|[^:]|\\\\.)*|.*))\\)|)",B=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+O+"*((?:-\\d)?\\d*)"+O+"*\\)|)(?=[^-]|$)",j=new RegExp("^"+O+"+|((?:^|[^\\\\])(?:\\\\.)*)"+O+"+$","g"),F=new RegExp("^"+O+"*,"+O+"*"),I=new RegExp("^"+O+"*([\\x20\\t\\r\\n\\f>+~])"+O+"*"),q=new RegExp(H),R=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,U=/^:not/,z=/[\x20\t\r\n\f]*[+~]/,W=/:not\($/,X=/h\d/i,V=/input|select|textarea|button/i,$=/\\(?!\\)/g,J={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),NAME:new RegExp("^\\[name=['\"]?("+M+")['\"]?\\]"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+P),PSEUDO:new RegExp("^"+H),POS:new RegExp(B,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+O+"*(even|odd|(([+-]|)(\\d*)n|)"+O+"*(?:([+-]|)"+O+"*(\\d+)|))"+O+"*\\)|)","i"),needsContext:new RegExp("^"+O+"*[>+~]|"+B,"i")},K=function(e){var t=g.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}},Q=K(function(e){return e.appendChild(g.createComment("")),!e.getElementsByTagName("*").length}),G=K(function(e){return e.innerHTML="<a href='#'></a>",e.firstChild&&typeof e.firstChild.getAttribute!==p&&e.firstChild.getAttribute("href")==="#"}),Y=K(function(e){e.innerHTML="<select></select>";var t=typeof e.lastChild.getAttribute("multiple");return t!=="boolean"&&t!=="string"}),Z=K(function(e){return e.innerHTML="<div class='hidden e'></div><div class='hidden'></div>",!e.getElementsByClassName||!e.getElementsByClassName("e").length?!1:(e.lastChild.className="e",e.getElementsByClassName("e").length===2)}),et=K(function(e){e.id=d+0,e.innerHTML="<a name='"+d+"'></a><div name='"+d+"'></div>",y.insertBefore(e,y.firstChild);var t=g.getElementsByName&&g.getElementsByName(d).length===2+g.getElementsByName(d+0).length;return r=!g.getElementById(d),y.removeChild(e),t});try{x.call(y.childNodes,0)[0].nodeType}catch(tt){x=function(e){var t,n=[];for(;t=this[e];e++)n.push(t);return n}}nt.matches=function(e,t){return nt(e,null,null,t)},nt.matchesSelector=function(e,t){return nt(t,null,null,[e]).length>0},s=nt.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(i===1||i===9||i===11){if(typeof e.textContent=="string")return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=s(e)}else if(i===3||i===4)return e.nodeValue}else for(;t=e[r];r++)n+=s(t);return n},o=nt.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?t.nodeName!=="HTML":!1},u=nt.contains=y.contains?function(e,t){var n=e.nodeType===9?e.documentElement:e,r=t&&t.parentNode;return e===r||!!(r&&r.nodeType===1&&n.contains&&n.contains(r))}:y.compareDocumentPosition?function(e,t){return t&&!!(e.compareDocumentPosition(t)&16)}:function(e,t){while(t=t.parentNode)if(t===e)return!0;return!1},nt.attr=function(e,t){var n,r=o(e);return r||(t=t.toLowerCase()),(n=i.attrHandle[t])?n(e):r||Y?e.getAttribute(t):(n=e.getAttributeNode(t),n?typeof e[t]=="boolean"?e[t]?t:null:n.specified?n.value:null:null)},i=nt.selectors={cacheLength:50,createPseudo:N,match:J,attrHandle:G?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},find:{ID:r?function(e,t,n){if(typeof t.getElementById!==p&&!n){var r=t.getElementById(e);return r&&r.parentNode?[r]:[]}}:function(e,n,r){if(typeof n.getElementById!==p&&!r){var i=n.getElementById(e);return i?i.id===e||typeof i.getAttributeNode!==p&&i.getAttributeNode("id").value===e?[i]:t:[]}},TAG:Q?function(e,t){if(typeof t.getElementsByTagName!==p)return t.getElementsByTagName(e)}:function(e,t){var n=t.getElementsByTagName(e);if(e==="*"){var r,i=[],s=0;for(;r=n[s];s++)r.nodeType===1&&i.push(r);return i}return n},NAME:et&&function(e,t){if(typeof t.getElementsByName!==p)return t.getElementsByName(name)},CLASS:Z&&function(e,t,n){if(typeof t.getElementsByClassName!==p&&!n)return t.getElementsByClassName(e)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace($,""),e[3]=(e[4]||e[5]||"").replace($,""),e[2]==="~="&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),e[1]==="nth"?(e[2]||nt.error(e[0]),e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd")),e[4]=+(e[6]+e[7]||e[2]==="odd")):e[2]&&nt.error(e[0]),e},PSEUDO:function(e){var t,n;if(J.CHILD.test(e[0]))return null;if(e[3])e[2]=e[3];else if(t=e[4])q.test(t)&&(n=ut(t,!0))&&(n=t.indexOf(")",t.length-n)-t.length)&&(t=t.slice(0,n),e[0]=e[0].slice(0,n)),e[2]=t;return e.slice(0,3)}},filter:{ID:r?function(e){return e=e.replace($,""),function(t){return t.getAttribute("id")===e}}:function(e){return e=e.replace($,""),function(t){var n=typeof t.getAttributeNode!==p&&t.getAttributeNode("id");return n&&n.value===e}},TAG:function(e){return e==="*"?function(){return!0}:(e=e.replace($,"").toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=k[d][e+" "];return t||(t=new RegExp("(^|"+O+")"+e+"("+O+"|$)"))&&k(e,function(e){return t.test(e.className||typeof e.getAttribute!==p&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r,i){var s=nt.attr(r,e);return s==null?t==="!=":t?(s+="",t==="="?s===n:t==="!="?s!==n:t==="^="?n&&s.indexOf(n)===0:t==="*="?n&&s.indexOf(n)>-1:t==="$="?n&&s.substr(s.length-n.length)===n:t==="~="?(" "+s+" ").indexOf(n)>-1:t==="|="?s===n||s.substr(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r){return e==="nth"?function(e){var t,i,s=e.parentNode;if(n===1&&r===0)return!0;if(s){i=0;for(t=s.firstChild;t;t=t.nextSibling)if(t.nodeType===1){i++;if(e===t)break}}return i-=r,i===n||i%n===0&&i/n>=0}:function(t){var n=t;switch(e){case"only":case"first":while(n=n.previousSibling)if(n.nodeType===1)return!1;if(e==="first")return!0;n=t;case"last":while(n=n.nextSibling)if(n.nodeType===1)return!1;return!0}}},PSEUDO:function(e,t){var n,r=i.pseudos[e]||i.setFilters[e.toLowerCase()]||nt.error("unsupported pseudo: "+e);return r[d]?r(t):r.length>1?(n=[e,e,"",t],i.setFilters.hasOwnProperty(e.toLowerCase())?N(function(e,n){var i,s=r(e,t),o=s.length;while(o--)i=T.call(e,s[o]),e[i]=!(n[i]=s[o])}):function(e){return r(e,0,n)}):r}},pseudos:{not:N(function(e){var t=[],n=[],r=a(e.replace(j,"$1"));return r[d]?N(function(e,t,n,i){var s,o=r(e,null,i,[]),u=e.length;while(u--)if(s=o[u])e[u]=!(t[u]=s)}):function(e,i,s){return t[0]=e,r(t,null,s,n),!n.pop()}}),has:N(function(e){return function(t){return nt(e,t).length>0}}),contains:N(function(e){return function(t){return(t.textContent||t.innerText||s(t)).indexOf(e)>-1}}),enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&!!e.checked||t==="option"&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},parent:function(e){return!i.pseudos.empty(e)},empty:function(e){var t;e=e.firstChild;while(e){if(e.nodeName>"@"||(t=e.nodeType)===3||t===4)return!1;e=e.nextSibling}return!0},header:function(e){return X.test(e.nodeName)},text:function(e){var t,n;return e.nodeName.toLowerCase()==="input"&&(t=e.type)==="text"&&((n=e.getAttribute("type"))==null||n.toLowerCase()===t)},radio:rt("radio"),checkbox:rt("checkbox"),file:rt("file"),password:rt("password"),image:rt("image"),submit:it("submit"),reset:it("reset"),button:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&e.type==="button"||t==="button"},input:function(e){return V.test(e.nodeName)},focus:function(e){var t=e.ownerDocument;return e===t.activeElement&&(!t.hasFocus||t.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},active:function(e){return e===e.ownerDocument.activeElement},first:st(function(){return[0]}),last:st(function(e,t){return[t-1]}),eq:st(function(e,t,n){return[n<0?n+t:n]}),even:st(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:st(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:st(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r);return e}),gt:st(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}},f=y.compareDocumentPosition?function(e,t){return e===t?(l=!0,0):(!e.compareDocumentPosition||!t.compareDocumentPosition?e.compareDocumentPosition:e.compareDocumentPosition(t)&4)?-1:1}:function(e,t){if(e===t)return l=!0,0;if(e.sourceIndex&&t.sourceIndex)return e.sourceIndex-t.sourceIndex;var n,r,i=[],s=[],o=e.parentNode,u=t.parentNode,a=o;if(o===u)return ot(e,t);if(!o)return-1;if(!u)return 1;while(a)i.unshift(a),a=a.parentNode;a=u;while(a)s.unshift(a),a=a.parentNode;n=i.length,r=s.length;for(var f=0;f<n&&f<r;f++)if(i[f]!==s[f])return ot(i[f],s[f]);return f===n?ot(e,s[f],-1):ot(i[f],t,1)},[0,0].sort(f),h=!l,nt.uniqueSort=function(e){var t,n=[],r=1,i=0;l=h,e.sort(f);if(l){for(;t=e[r];r++)t===e[r-1]&&(i=n.push(r));while(i--)e.splice(n[i],1)}return e},nt.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},a=nt.compile=function(e,t){var n,r=[],i=[],s=A[d][e+" "];if(!s){t||(t=ut(e)),n=t.length;while(n--)s=ht(t[n]),s[d]?r.push(s):i.push(s);s=A(e,pt(i,r))}return s},g.querySelectorAll&&function(){var e,t=vt,n=/'|\\/g,r=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,i=[":focus"],s=[":active"],u=y.matchesSelector||y.mozMatchesSelector||y.webkitMatchesSelector||y.oMatchesSelector||y.msMatchesSelector;K(function(e){e.innerHTML="<select><option selected=''></option></select>",e.querySelectorAll("[selected]").length||i.push("\\["+O+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||i.push(":checked")}),K(function(e){e.innerHTML="<p test=''></p>",e.querySelectorAll("[test^='']").length&&i.push("[*^$]="+O+"*(?:\"\"|'')"),e.innerHTML="<input type='hidden'/>",e.querySelectorAll(":enabled").length||i.push(":enabled",":disabled")}),i=new RegExp(i.join("|")),vt=function(e,r,s,o,u){if(!o&&!u&&!i.test(e)){var a,f,l=!0,c=d,h=r,p=r.nodeType===9&&e;if(r.nodeType===1&&r.nodeName.toLowerCase()!=="object"){a=ut(e),(l=r.getAttribute("id"))?c=l.replace(n,"\\$&"):r.setAttribute("id",c),c="[id='"+c+"'] ",f=a.length;while(f--)a[f]=c+a[f].join("");h=z.test(e)&&r.parentNode||r,p=a.join(",")}if(p)try{return S.apply(s,x.call(h.querySelectorAll(p),0)),s}catch(v){}finally{l||r.removeAttribute("id")}}return t(e,r,s,o,u)},u&&(K(function(t){e=u.call(t,"div");try{u.call(t,"[test!='']:sizzle"),s.push("!=",H)}catch(n){}}),s=new RegExp(s.join("|")),nt.matchesSelector=function(t,n){n=n.replace(r,"='$1']");if(!o(t)&&!s.test(n)&&!i.test(n))try{var a=u.call(t,n);if(a||e||t.document&&t.document.nodeType!==11)return a}catch(f){}return nt(n,null,null,[t]).length>0})}(),i.pseudos.nth=i.pseudos.eq,i.filters=mt.prototype=i.pseudos,i.setFilters=new mt,nt.attr=v.attr,v.find=nt,v.expr=nt.selectors,v.expr[":"]=v.expr.pseudos,v.unique=nt.uniqueSort,v.text=nt.getText,v.isXMLDoc=nt.isXML,v.contains=nt.contains}(e);var nt=/Until$/,rt=/^(?:parents|prev(?:Until|All))/,it=/^.[^:#\[\.,]*$/,st=v.expr.match.needsContext,ot={children:!0,contents:!0,next:!0,prev:!0};v.fn.extend({find:function(e){var t,n,r,i,s,o,u=this;if(typeof e!="string")return v(e).filter(function(){for(t=0,n=u.length;t<n;t++)if(v.contains(u[t],this))return!0});o=this.pushStack("","find",e);for(t=0,n=this.length;t<n;t++){r=o.length,v.find(e,this[t],o);if(t>0)for(i=r;i<o.length;i++)for(s=0;s<r;s++)if(o[s]===o[i]){o.splice(i--,1);break}}return o},has:function(e){var t,n=v(e,this),r=n.length;return this.filter(function(){for(t=0;t<r;t++)if(v.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(ft(this,e,!1),"not",e)},filter:function(e){return this.pushStack(ft(this,e,!0),"filter",e)},is:function(e){return!!e&&(typeof e=="string"?st.test(e)?v(e,this.context).index(this[0])>=0:v.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,s=[],o=st.test(e)||typeof e!="string"?v(e,t||this.context):0;for(;r<i;r++){n=this[r];while(n&&n.ownerDocument&&n!==t&&n.nodeType!==11){if(o?o.index(n)>-1:v.find.matchesSelector(n,e)){s.push(n);break}n=n.parentNode}}return s=s.length>1?v.unique(s):s,this.pushStack(s,"closest",e)},index:function(e){return e?typeof e=="string"?v.inArray(this[0],v(e)):v.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(e,t){var n=typeof e=="string"?v(e,t):v.makeArray(e&&e.nodeType?[e]:e),r=v.merge(this.get(),n);return this.pushStack(ut(n[0])||ut(r[0])?r:v.unique(r))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}}),v.fn.andSelf=v.fn.addBack,v.each({parent:function(e){var t=e.parentNode;return t&&t.nodeType!==11?t:null},parents:function(e){return v.dir(e,"parentNode")},parentsUntil:function(e,t,n){return v.dir(e,"parentNode",n)},next:function(e){return at(e,"nextSibling")},prev:function(e){return at(e,"previousSibling")},nextAll:function(e){return v.dir(e,"nextSibling")},prevAll:function(e){return v.dir(e,"previousSibling")},nextUntil:function(e,t,n){return v.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return v.dir(e,"previousSibling",n)},siblings:function(e){return v.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return v.sibling(e.firstChild)},contents:function(e){return v.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:v.merge([],e.childNodes)}},function(e,t){v.fn[e]=function(n,r){var i=v.map(this,t,n);return nt.test(e)||(r=n),r&&typeof r=="string"&&(i=v.filter(r,i)),i=this.length>1&&!ot[e]?v.unique(i):i,this.length>1&&rt.test(e)&&(i=i.reverse()),this.pushStack(i,e,l.call(arguments).join(","))}}),v.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),t.length===1?v.find.matchesSelector(t[0],e)?[t[0]]:[]:v.find.matches(e,t)},dir:function(e,n,r){var i=[],s=e[n];while(s&&s.nodeType!==9&&(r===t||s.nodeType!==1||!v(s).is(r)))s.nodeType===1&&i.push(s),s=s[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)e.nodeType===1&&e!==t&&n.push(e);return n}});var ct="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ht=/ jQuery\d+="(?:null|\d+)"/g,pt=/^\s+/,dt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,vt=/<([\w:]+)/,mt=/<tbody/i,gt=/<|&#?\w+;/,yt=/<(?:script|style|link)/i,bt=/<(?:script|object|embed|option|style)/i,wt=new RegExp("<(?:"+ct+")[\\s/>]","i"),Et=/^(?:checkbox|radio)$/,St=/checked\s*(?:[^=]|=\s*.checked.)/i,xt=/\/(java|ecma)script/i,Tt=/^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g,Nt={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},Ct=lt(i),kt=Ct.appendChild(i.createElement("div"));Nt.optgroup=Nt.option,Nt.tbody=Nt.tfoot=Nt.colgroup=Nt.caption=Nt.thead,Nt.th=Nt.td,v.support.htmlSerialize||(Nt._default=[1,"X<div>","</div>"]),v.fn.extend({text:function(e){return v.access(this,function(e){return e===t?v.text(this):this.empty().append((this[0]&&this[0].ownerDocument||i).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(v.isFunction(e))return this.each(function(t){v(this).wrapAll(e.call(this,t))});if(this[0]){var t=v(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&e.firstChild.nodeType===1)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return v.isFunction(e)?this.each(function(t){v(this).wrapInner(e.call(this,t))}):this.each(function(){var t=v(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=v.isFunction(e);return this.each(function(n){v(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){v.nodeName(this,"body")||v(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(e,this.firstChild)})},before:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(e,this),"before",this.selector)}},after:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this.nextSibling)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(this,e),"after",this.selector)}},remove:function(e,t){var n,r=0;for(;(n=this[r])!=null;r++)if(!e||v.filter(e,[n]).length)!t&&n.nodeType===1&&(v.cleanData(n.getElementsByTagName("*")),v.cleanData([n])),n.parentNode&&n.parentNode.removeChild(n);return this},empty:function(){var e,t=0;for(;(e=this[t])!=null;t++){e.nodeType===1&&v.cleanData(e.getElementsByTagName("*"));while(e.firstChild)e.removeChild(e.firstChild)}return this},clone:function(e,t){return e=e==null?!1:e,t=t==null?e:t,this.map(function(){return v.clone(this,e,t)})},html:function(e){return v.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return n.nodeType===1?n.innerHTML.replace(ht,""):t;if(typeof e=="string"&&!yt.test(e)&&(v.support.htmlSerialize||!wt.test(e))&&(v.support.leadingWhitespace||!pt.test(e))&&!Nt[(vt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(dt,"<$1></$2>");try{for(;r<i;r++)n=this[r]||{},n.nodeType===1&&(v.cleanData(n.getElementsByTagName("*")),n.innerHTML=e);n=0}catch(s){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(e){return ut(this[0])?this.length?this.pushStack(v(v.isFunction(e)?e():e),"replaceWith",e):this:v.isFunction(e)?this.each(function(t){var n=v(this),r=n.html();n.replaceWith(e.call(this,t,r))}):(typeof e!="string"&&(e=v(e).detach()),this.each(function(){var t=this.nextSibling,n=this.parentNode;v(this).remove(),t?v(t).before(e):v(n).append(e)}))},detach:function(e){return this.remove(e,!0)},domManip:function(e,n,r){e=[].concat.apply([],e);var i,s,o,u,a=0,f=e[0],l=[],c=this.length;if(!v.support.checkClone&&c>1&&typeof f=="string"&&St.test(f))return this.each(function(){v(this).domManip(e,n,r)});if(v.isFunction(f))return this.each(function(i){var s=v(this);e[0]=f.call(this,i,n?s.html():t),s.domManip(e,n,r)});if(this[0]){i=v.buildFragment(e,this,l),o=i.fragment,s=o.firstChild,o.childNodes.length===1&&(o=s);if(s){n=n&&v.nodeName(s,"tr");for(u=i.cacheable||c-1;a<c;a++)r.call(n&&v.nodeName(this[a],"table")?Lt(this[a],"tbody"):this[a],a===u?o:v.clone(o,!0,!0))}o=s=null,l.length&&v.each(l,function(e,t){t.src?v.ajax?v.ajax({url:t.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):v.error("no ajax"):v.globalEval((t.text||t.textContent||t.innerHTML||"").replace(Tt,"")),t.parentNode&&t.parentNode.removeChild(t)})}return this}}),v.buildFragment=function(e,n,r){var s,o,u,a=e[0];return n=n||i,n=!n.nodeType&&n[0]||n,n=n.ownerDocument||n,e.length===1&&typeof a=="string"&&a.length<512&&n===i&&a.charAt(0)==="<"&&!bt.test(a)&&(v.support.checkClone||!St.test(a))&&(v.support.html5Clone||!wt.test(a))&&(o=!0,s=v.fragments[a],u=s!==t),s||(s=n.createDocumentFragment(),v.clean(e,n,s,r),o&&(v.fragments[a]=u&&s)),{fragment:s,cacheable:o}},v.fragments={},v.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){v.fn[e]=function(n){var r,i=0,s=[],o=v(n),u=o.length,a=this.length===1&&this[0].parentNode;if((a==null||a&&a.nodeType===11&&a.childNodes.length===1)&&u===1)return o[t](this[0]),this;for(;i<u;i++)r=(i>0?this.clone(!0):this).get(),v(o[i])[t](r),s=s.concat(r);return this.pushStack(s,e,o.selector)}}),v.extend({clone:function(e,t,n){var r,i,s,o;v.support.html5Clone||v.isXMLDoc(e)||!wt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(kt.innerHTML=e.outerHTML,kt.removeChild(o=kt.firstChild));if((!v.support.noCloneEvent||!v.support.noCloneChecked)&&(e.nodeType===1||e.nodeType===11)&&!v.isXMLDoc(e)){Ot(e,o),r=Mt(e),i=Mt(o);for(s=0;r[s];++s)i[s]&&Ot(r[s],i[s])}if(t){At(e,o);if(n){r=Mt(e),i=Mt(o);for(s=0;r[s];++s)At(r[s],i[s])}}return r=i=null,o},clean:function(e,t,n,r){var s,o,u,a,f,l,c,h,p,d,m,g,y=t===i&&Ct,b=[];if(!t||typeof t.createDocumentFragment=="undefined")t=i;for(s=0;(u=e[s])!=null;s++){typeof u=="number"&&(u+="");if(!u)continue;if(typeof u=="string")if(!gt.test(u))u=t.createTextNode(u);else{y=y||lt(t),c=t.createElement("div"),y.appendChild(c),u=u.replace(dt,"<$1></$2>"),a=(vt.exec(u)||["",""])[1].toLowerCase(),f=Nt[a]||Nt._default,l=f[0],c.innerHTML=f[1]+u+f[2];while(l--)c=c.lastChild;if(!v.support.tbody){h=mt.test(u),p=a==="table"&&!h?c.firstChild&&c.firstChild.childNodes:f[1]==="<table>"&&!h?c.childNodes:[];for(o=p.length-1;o>=0;--o)v.nodeName(p[o],"tbody")&&!p[o].childNodes.length&&p[o].parentNode.removeChild(p[o])}!v.support.leadingWhitespace&&pt.test(u)&&c.insertBefore(t.createTextNode(pt.exec(u)[0]),c.firstChild),u=c.childNodes,c.parentNode.removeChild(c)}u.nodeType?b.push(u):v.merge(b,u)}c&&(u=c=y=null);if(!v.support.appendChecked)for(s=0;(u=b[s])!=null;s++)v.nodeName(u,"input")?_t(u):typeof u.getElementsByTagName!="undefined"&&v.grep(u.getElementsByTagName("input"),_t);if(n){m=function(e){if(!e.type||xt.test(e.type))return r?r.push(e.parentNode?e.parentNode.removeChild(e):e):n.appendChild(e)};for(s=0;(u=b[s])!=null;s++)if(!v.nodeName(u,"script")||!m(u))n.appendChild(u),typeof u.getElementsByTagName!="undefined"&&(g=v.grep(v.merge([],u.getElementsByTagName("script")),m),b.splice.apply(b,[s+1,0].concat(g)),s+=g.length)}return b},cleanData:function(e,t){var n,r,i,s,o=0,u=v.expando,a=v.cache,f=v.support.deleteExpando,l=v.event.special;for(;(i=e[o])!=null;o++)if(t||v.acceptData(i)){r=i[u],n=r&&a[r];if(n){if(n.events)for(s in n.events)l[s]?v.event.remove(i,s):v.removeEvent(i,s,n.handle);a[r]&&(delete a[r],f?delete i[u]:i.removeAttribute?i.removeAttribute(u):i[u]=null,v.deletedIds.push(r))}}}}),function(){var e,t;v.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e=v.uaMatch(o.userAgent),t={},e.browser&&(t[e.browser]=!0,t.version=e.version),t.chrome?t.webkit=!0:t.webkit&&(t.safari=!0),v.browser=t,v.sub=function(){function e(t,n){return new e.fn.init(t,n)}v.extend(!0,e,this),e.superclass=this,e.fn=e.prototype=this(),e.fn.constructor=e,e.sub=this.sub,e.fn.init=function(r,i){return i&&i instanceof v&&!(i instanceof e)&&(i=e(i)),v.fn.init.call(this,r,i,t)},e.fn.init.prototype=e.fn;var t=e(i);return e}}();var Dt,Pt,Ht,Bt=/alpha\([^)]*\)/i,jt=/opacity=([^)]*)/,Ft=/^(top|right|bottom|left)$/,It=/^(none|table(?!-c[ea]).+)/,qt=/^margin/,Rt=new RegExp("^("+m+")(.*)$","i"),Ut=new RegExp("^("+m+")(?!px)[a-z%]+$","i"),zt=new RegExp("^([-+])=("+m+")","i"),Wt={BODY:"block"},Xt={position:"absolute",visibility:"hidden",display:"block"},Vt={letterSpacing:0,fontWeight:400},$t=["Top","Right","Bottom","Left"],Jt=["Webkit","O","Moz","ms"],Kt=v.fn.toggle;v.fn.extend({css:function(e,n){return v.access(this,function(e,n,r){return r!==t?v.style(e,n,r):v.css(e,n)},e,n,arguments.length>1)},show:function(){return Yt(this,!0)},hide:function(){return Yt(this)},toggle:function(e,t){var n=typeof e=="boolean";return v.isFunction(e)&&v.isFunction(t)?Kt.apply(this,arguments):this.each(function(){(n?e:Gt(this))?v(this).show():v(this).hide()})}}),v.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Dt(e,"opacity");return n===""?"1":n}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":v.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(!e||e.nodeType===3||e.nodeType===8||!e.style)return;var s,o,u,a=v.camelCase(n),f=e.style;n=v.cssProps[a]||(v.cssProps[a]=Qt(f,a)),u=v.cssHooks[n]||v.cssHooks[a];if(r===t)return u&&"get"in u&&(s=u.get(e,!1,i))!==t?s:f[n];o=typeof r,o==="string"&&(s=zt.exec(r))&&(r=(s[1]+1)*s[2]+parseFloat(v.css(e,n)),o="number");if(r==null||o==="number"&&isNaN(r))return;o==="number"&&!v.cssNumber[a]&&(r+="px");if(!u||!("set"in u)||(r=u.set(e,r,i))!==t)try{f[n]=r}catch(l){}},css:function(e,n,r,i){var s,o,u,a=v.camelCase(n);return n=v.cssProps[a]||(v.cssProps[a]=Qt(e.style,a)),u=v.cssHooks[n]||v.cssHooks[a],u&&"get"in u&&(s=u.get(e,!0,i)),s===t&&(s=Dt(e,n)),s==="normal"&&n in Vt&&(s=Vt[n]),r||i!==t?(o=parseFloat(s),r||v.isNumeric(o)?o||0:s):s},swap:function(e,t,n){var r,i,s={};for(i in t)s[i]=e.style[i],e.style[i]=t[i];r=n.call(e);for(i in t)e.style[i]=s[i];return r}}),e.getComputedStyle?Dt=function(t,n){var r,i,s,o,u=e.getComputedStyle(t,null),a=t.style;return u&&(r=u.getPropertyValue(n)||u[n],r===""&&!v.contains(t.ownerDocument,t)&&(r=v.style(t,n)),Ut.test(r)&&qt.test(n)&&(i=a.width,s=a.minWidth,o=a.maxWidth,a.minWidth=a.maxWidth=a.width=r,r=u.width,a.width=i,a.minWidth=s,a.maxWidth=o)),r}:i.documentElement.currentStyle&&(Dt=function(e,t){var n,r,i=e.currentStyle&&e.currentStyle[t],s=e.style;return i==null&&s&&s[t]&&(i=s[t]),Ut.test(i)&&!Ft.test(t)&&(n=s.left,r=e.runtimeStyle&&e.runtimeStyle.left,r&&(e.runtimeStyle.left=e.currentStyle.left),s.left=t==="fontSize"?"1em":i,i=s.pixelLeft+"px",s.left=n,r&&(e.runtimeStyle.left=r)),i===""?"auto":i}),v.each(["height","width"],function(e,t){v.cssHooks[t]={get:function(e,n,r){if(n)return e.offsetWidth===0&&It.test(Dt(e,"display"))?v.swap(e,Xt,function(){return tn(e,t,r)}):tn(e,t,r)},set:function(e,n,r){return Zt(e,n,r?en(e,t,r,v.support.boxSizing&&v.css(e,"boxSizing")==="border-box"):0)}}}),v.support.opacity||(v.cssHooks.opacity={get:function(e,t){return jt.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=v.isNumeric(t)?"alpha(opacity="+t*100+")":"",s=r&&r.filter||n.filter||"";n.zoom=1;if(t>=1&&v.trim(s.replace(Bt,""))===""&&n.removeAttribute){n.removeAttribute("filter");if(r&&!r.filter)return}n.filter=Bt.test(s)?s.replace(Bt,i):s+" "+i}}),v(function(){v.support.reliableMarginRight||(v.cssHooks.marginRight={get:function(e,t){return v.swap(e,{display:"inline-block"},function(){if(t)return Dt(e,"marginRight")})}}),!v.support.pixelPosition&&v.fn.position&&v.each(["top","left"],function(e,t){v.cssHooks[t]={get:function(e,n){if(n){var r=Dt(e,t);return Ut.test(r)?v(e).position()[t]+"px":r}}}})}),v.expr&&v.expr.filters&&(v.expr.filters.hidden=function(e){return e.offsetWidth===0&&e.offsetHeight===0||!v.support.reliableHiddenOffsets&&(e.style&&e.style.display||Dt(e,"display"))==="none"},v.expr.filters.visible=function(e){return!v.expr.filters.hidden(e)}),v.each({margin:"",padding:"",border:"Width"},function(e,t){v.cssHooks[e+t]={expand:function(n){var r,i=typeof n=="string"?n.split(" "):[n],s={};for(r=0;r<4;r++)s[e+$t[r]+t]=i[r]||i[r-2]||i[0];return s}},qt.test(e)||(v.cssHooks[e+t].set=Zt)});var rn=/%20/g,sn=/\[\]$/,on=/\r?\n/g,un=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,an=/^(?:select|textarea)/i;v.fn.extend({serialize:function(){return v.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?v.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||an.test(this.nodeName)||un.test(this.type))}).map(function(e,t){var n=v(this).val();return n==null?null:v.isArray(n)?v.map(n,function(e,n){return{name:t.name,value:e.replace(on,"\r\n")}}):{name:t.name,value:n.replace(on,"\r\n")}}).get()}}),v.param=function(e,n){var r,i=[],s=function(e,t){t=v.isFunction(t)?t():t==null?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};n===t&&(n=v.ajaxSettings&&v.ajaxSettings.traditional);if(v.isArray(e)||e.jquery&&!v.isPlainObject(e))v.each(e,function(){s(this.name,this.value)});else for(r in e)fn(r,e[r],n,s);return i.join("&").replace(rn,"+")};var ln,cn,hn=/#.*$/,pn=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,dn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,vn=/^(?:GET|HEAD)$/,mn=/^\/\//,gn=/\?/,yn=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bn=/([?&])_=[^&]*/,wn=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,En=v.fn.load,Sn={},xn={},Tn=["*/"]+["*"];try{cn=s.href}catch(Nn){cn=i.createElement("a"),cn.href="",cn=cn.href}ln=wn.exec(cn.toLowerCase())||[],v.fn.load=function(e,n,r){if(typeof e!="string"&&En)return En.apply(this,arguments);if(!this.length)return this;var i,s,o,u=this,a=e.indexOf(" ");return a>=0&&(i=e.slice(a,e.length),e=e.slice(0,a)),v.isFunction(n)?(r=n,n=t):n&&typeof n=="object"&&(s="POST"),v.ajax({url:e,type:s,dataType:"html",data:n,complete:function(e,t){r&&u.each(r,o||[e.responseText,t,e])}}).done(function(e){o=arguments,u.html(i?v("<div>").append(e.replace(yn,"")).find(i):e)}),this},v.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,t){v.fn[t]=function(e){return this.on(t,e)}}),v.each(["get","post"],function(e,n){v[n]=function(e,r,i,s){return v.isFunction(r)&&(s=s||i,i=r,r=t),v.ajax({type:n,url:e,data:r,success:i,dataType:s})}}),v.extend({getScript:function(e,n){return v.get(e,t,n,"script")},getJSON:function(e,t,n){return v.get(e,t,n,"json")},ajaxSetup:function(e,t){return t?Ln(e,v.ajaxSettings):(t=e,e=v.ajaxSettings),Ln(e,t),e},ajaxSettings:{url:cn,isLocal:dn.test(ln[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":Tn},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":v.parseJSON,"text xml":v.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:Cn(Sn),ajaxTransport:Cn(xn),ajax:function(e,n){function T(e,n,s,a){var l,y,b,w,S,T=n;if(E===2)return;E=2,u&&clearTimeout(u),o=t,i=a||"",x.readyState=e>0?4:0,s&&(w=An(c,x,s));if(e>=200&&e<300||e===304)c.ifModified&&(S=x.getResponseHeader("Last-Modified"),S&&(v.lastModified[r]=S),S=x.getResponseHeader("Etag"),S&&(v.etag[r]=S)),e===304?(T="notmodified",l=!0):(l=On(c,w),T=l.state,y=l.data,b=l.error,l=!b);else{b=T;if(!T||e)T="error",e<0&&(e=0)}x.status=e,x.statusText=(n||T)+"",l?d.resolveWith(h,[y,T,x]):d.rejectWith(h,[x,T,b]),x.statusCode(g),g=t,f&&p.trigger("ajax"+(l?"Success":"Error"),[x,c,l?y:b]),m.fireWith(h,[x,T]),f&&(p.trigger("ajaxComplete",[x,c]),--v.active||v.event.trigger("ajaxStop"))}typeof e=="object"&&(n=e,e=t),n=n||{};var r,i,s,o,u,a,f,l,c=v.ajaxSetup({},n),h=c.context||c,p=h!==c&&(h.nodeType||h instanceof v)?v(h):v.event,d=v.Deferred(),m=v.Callbacks("once memory"),g=c.statusCode||{},b={},w={},E=0,S="canceled",x={readyState:0,setRequestHeader:function(e,t){if(!E){var n=e.toLowerCase();e=w[n]=w[n]||e,b[e]=t}return this},getAllResponseHeaders:function(){return E===2?i:null},getResponseHeader:function(e){var n;if(E===2){if(!s){s={};while(n=pn.exec(i))s[n[1].toLowerCase()]=n[2]}n=s[e.toLowerCase()]}return n===t?null:n},overrideMimeType:function(e){return E||(c.mimeType=e),this},abort:function(e){return e=e||S,o&&o.abort(e),T(0,e),this}};d.promise(x),x.success=x.done,x.error=x.fail,x.complete=m.add,x.statusCode=function(e){if(e){var t;if(E<2)for(t in e)g[t]=[g[t],e[t]];else t=e[x.status],x.always(t)}return this},c.url=((e||c.url)+"").replace(hn,"").replace(mn,ln[1]+"//"),c.dataTypes=v.trim(c.dataType||"*").toLowerCase().split(y),c.crossDomain==null&&(a=wn.exec(c.url.toLowerCase()),c.crossDomain=!(!a||a[1]===ln[1]&&a[2]===ln[2]&&(a[3]||(a[1]==="http:"?80:443))==(ln[3]||(ln[1]==="http:"?80:443)))),c.data&&c.processData&&typeof c.data!="string"&&(c.data=v.param(c.data,c.traditional)),kn(Sn,c,n,x);if(E===2)return x;f=c.global,c.type=c.type.toUpperCase(),c.hasContent=!vn.test(c.type),f&&v.active++===0&&v.event.trigger("ajaxStart");if(!c.hasContent){c.data&&(c.url+=(gn.test(c.url)?"&":"?")+c.data,delete c.data),r=c.url;if(c.cache===!1){var N=v.now(),C=c.url.replace(bn,"$1_="+N);c.url=C+(C===c.url?(gn.test(c.url)?"&":"?")+"_="+N:"")}}(c.data&&c.hasContent&&c.contentType!==!1||n.contentType)&&x.setRequestHeader("Content-Type",c.contentType),c.ifModified&&(r=r||c.url,v.lastModified[r]&&x.setRequestHeader("If-Modified-Since",v.lastModified[r]),v.etag[r]&&x.setRequestHeader("If-None-Match",v.etag[r])),x.setRequestHeader("Accept",c.dataTypes[0]&&c.accepts[c.dataTypes[0]]?c.accepts[c.dataTypes[0]]+(c.dataTypes[0]!=="*"?", "+Tn+"; q=0.01":""):c.accepts["*"]);for(l in c.headers)x.setRequestHeader(l,c.headers[l]);if(!c.beforeSend||c.beforeSend.call(h,x,c)!==!1&&E!==2){S="abort";for(l in{success:1,error:1,complete:1})x[l](c[l]);o=kn(xn,c,n,x);if(!o)T(-1,"No Transport");else{x.readyState=1,f&&p.trigger("ajaxSend",[x,c]),c.async&&c.timeout>0&&(u=setTimeout(function(){x.abort("timeout")},c.timeout));try{E=1,o.send(b,T)}catch(k){if(!(E<2))throw k;T(-1,k)}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var Mn=[],_n=/\?/,Dn=/(=)\?(?=&|$)|\?\?/,Pn=v.now();v.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Mn.pop()||v.expando+"_"+Pn++;return this[e]=!0,e}}),v.ajaxPrefilter("json jsonp",function(n,r,i){var s,o,u,a=n.data,f=n.url,l=n.jsonp!==!1,c=l&&Dn.test(f),h=l&&!c&&typeof a=="string"&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Dn.test(a);if(n.dataTypes[0]==="jsonp"||c||h)return s=n.jsonpCallback=v.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,o=e[s],c?n.url=f.replace(Dn,"$1"+s):h?n.data=a.replace(Dn,"$1"+s):l&&(n.url+=(_n.test(f)?"&":"?")+n.jsonp+"="+s),n.converters["script json"]=function(){return u||v.error(s+" was not called"),u[0]},n.dataTypes[0]="json",e[s]=function(){u=arguments},i.always(function(){e[s]=o,n[s]&&(n.jsonpCallback=r.jsonpCallback,Mn.push(s)),u&&v.isFunction(o)&&o(u[0]),u=o=t}),"script"}),v.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){return v.globalEval(e),e}}}),v.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),v.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=i.head||i.getElementsByTagName("head")[0]||i.documentElement;return{send:function(s,o){n=i.createElement("script"),n.async="async",e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,i){if(i||!n.readyState||/loaded|complete/.test(n.readyState))n.onload=n.onreadystatechange=null,r&&n.parentNode&&r.removeChild(n),n=t,i||o(200,"success")},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(0,1)}}}});var Hn,Bn=e.ActiveXObject?function(){for(var e in Hn)Hn[e](0,1)}:!1,jn=0;v.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&Fn()||In()}:Fn,function(e){v.extend(v.support,{ajax:!!e,cors:!!e&&"withCredentials"in e})}(v.ajaxSettings.xhr()),v.support.ajax&&v.ajaxTransport(function(n){if(!n.crossDomain||v.support.cors){var r;return{send:function(i,s){var o,u,a=n.xhr();n.username?a.open(n.type,n.url,n.async,n.username,n.password):a.open(n.type,n.url,n.async);if(n.xhrFields)for(u in n.xhrFields)a[u]=n.xhrFields[u];n.mimeType&&a.overrideMimeType&&a.overrideMimeType(n.mimeType),!n.crossDomain&&!i["X-Requested-With"]&&(i["X-Requested-With"]="XMLHttpRequest");try{for(u in i)a.setRequestHeader(u,i[u])}catch(f){}a.send(n.hasContent&&n.data||null),r=function(e,i){var u,f,l,c,h;try{if(r&&(i||a.readyState===4)){r=t,o&&(a.onreadystatechange=v.noop,Bn&&delete Hn[o]);if(i)a.readyState!==4&&a.abort();else{u=a.status,l=a.getAllResponseHeaders(),c={},h=a.responseXML,h&&h.documentElement&&(c.xml=h);try{c.text=a.responseText}catch(p){}try{f=a.statusText}catch(p){f=""}!u&&n.isLocal&&!n.crossDomain?u=c.text?200:404:u===1223&&(u=204)}}}catch(d){i||s(-1,d)}c&&s(u,f,c,l)},n.async?a.readyState===4?setTimeout(r,0):(o=++jn,Bn&&(Hn||(Hn={},v(e).unload(Bn)),Hn[o]=r),a.onreadystatechange=r):r()},abort:function(){r&&r(0,1)}}}});var qn,Rn,Un=/^(?:toggle|show|hide)$/,zn=new RegExp("^(?:([-+])=|)("+m+")([a-z%]*)$","i"),Wn=/queueHooks$/,Xn=[Gn],Vn={"*":[function(e,t){var n,r,i=this.createTween(e,t),s=zn.exec(t),o=i.cur(),u=+o||0,a=1,f=20;if(s){n=+s[2],r=s[3]||(v.cssNumber[e]?"":"px");if(r!=="px"&&u){u=v.css(i.elem,e,!0)||n||1;do a=a||".5",u/=a,v.style(i.elem,e,u+r);while(a!==(a=i.cur()/o)&&a!==1&&--f)}i.unit=r,i.start=u,i.end=s[1]?u+(s[1]+1)*n:n}return i}]};v.Animation=v.extend(Kn,{tweener:function(e,t){v.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;r<i;r++)n=e[r],Vn[n]=Vn[n]||[],Vn[n].unshift(t)},prefilter:function(e,t){t?Xn.unshift(e):Xn.push(e)}}),v.Tween=Yn,Yn.prototype={constructor:Yn,init:function(e,t,n,r,i,s){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=s||(v.cssNumber[n]?"":"px")},cur:function(){var e=Yn.propHooks[this.prop];return e&&e.get?e.get(this):Yn.propHooks._default.get(this)},run:function(e){var t,n=Yn.propHooks[this.prop];return this.options.duration?this.pos=t=v.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=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):Yn.propHooks._default.set(this),this}},Yn.prototype.init.prototype=Yn.prototype,Yn.propHooks={_default:{get:function(e){var t;return e.elem[e.prop]==null||!!e.elem.style&&e.elem.style[e.prop]!=null?(t=v.css(e.elem,e.prop,!1,""),!t||t==="auto"?0:t):e.elem[e.prop]},set:function(e){v.fx.step[e.prop]?v.fx.step[e.prop](e):e.elem.style&&(e.elem.style[v.cssProps[e.prop]]!=null||v.cssHooks[e.prop])?v.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},Yn.propHooks.scrollTop=Yn.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},v.each(["toggle","show","hide"],function(e,t){var n=v.fn[t];v.fn[t]=function(r,i,s){return r==null||typeof r=="boolean"||!e&&v.isFunction(r)&&v.isFunction(i)?n.apply(this,arguments):this.animate(Zn(t,!0),r,i,s)}}),v.fn.extend({fadeTo:function(e,t,n,r){return this.filter(Gt).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=v.isEmptyObject(e),s=v.speed(t,n,r),o=function(){var t=Kn(this,v.extend({},e),s);i&&t.stop(!0)};return i||s.queue===!1?this.each(o):this.queue(s.queue,o)},stop:function(e,n,r){var i=function(e){var t=e.stop;delete e.stop,t(r)};return typeof e!="string"&&(r=n,n=e,e=t),n&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,n=e!=null&&e+"queueHooks",s=v.timers,o=v._data(this);if(n)o[n]&&o[n].stop&&i(o[n]);else for(n in o)o[n]&&o[n].stop&&Wn.test(n)&&i(o[n]);for(n=s.length;n--;)s[n].elem===this&&(e==null||s[n].queue===e)&&(s[n].anim.stop(r),t=!1,s.splice(n,1));(t||!r)&&v.dequeue(this,e)})}}),v.each({slideDown:Zn("show"),slideUp:Zn("hide"),slideToggle:Zn("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){v.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),v.speed=function(e,t,n){var r=e&&typeof e=="object"?v.extend({},e):{complete:n||!n&&t||v.isFunction(e)&&e,duration:e,easing:n&&t||t&&!v.isFunction(t)&&t};r.duration=v.fx.off?0:typeof r.duration=="number"?r.duration:r.duration in v.fx.speeds?v.fx.speeds[r.duration]:v.fx.speeds._default;if(r.queue==null||r.queue===!0)r.queue="fx";return r.old=r.complete,r.complete=function(){v.isFunction(r.old)&&r.old.call(this),r.queue&&v.dequeue(this,r.queue)},r},v.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},v.timers=[],v.fx=Yn.prototype.init,v.fx.tick=function(){var e,n=v.timers,r=0;qn=v.now();for(;r<n.length;r++)e=n[r],!e()&&n[r]===e&&n.splice(r--,1);n.length||v.fx.stop(),qn=t},v.fx.timer=function(e){e()&&v.timers.push(e)&&!Rn&&(Rn=setInterval(v.fx.tick,v.fx.interval))},v.fx.interval=13,v.fx.stop=function(){clearInterval(Rn),Rn=null},v.fx.speeds={slow:600,fast:200,_default:400},v.fx.step={},v.expr&&v.expr.filters&&(v.expr.filters.animated=function(e){return v.grep(v.timers,function(t){return e===t.elem}).length});var er=/^(?:body|html)$/i;v.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){v.offset.setOffset(this,e,t)});var n,r,i,s,o,u,a,f={top:0,left:0},l=this[0],c=l&&l.ownerDocument;if(!c)return;return(r=c.body)===l?v.offset.bodyOffset(l):(n=c.documentElement,v.contains(n,l)?(typeof l.getBoundingClientRect!="undefined"&&(f=l.getBoundingClientRect()),i=tr(c),s=n.clientTop||r.clientTop||0,o=n.clientLeft||r.clientLeft||0,u=i.pageYOffset||n.scrollTop,a=i.pageXOffset||n.scrollLeft,{top:f.top+u-s,left:f.left+a-o}):f)},v.offset={bodyOffset:function(e){var t=e.offsetTop,n=e.offsetLeft;return v.support.doesNotIncludeMarginInBodyOffset&&(t+=parseFloat(v.css(e,"marginTop"))||0,n+=parseFloat(v.css(e,"marginLeft"))||0),{top:t,left:n}},setOffset:function(e,t,n){var r=v.css(e,"position");r==="static"&&(e.style.position="relative");var i=v(e),s=i.offset(),o=v.css(e,"top"),u=v.css(e,"left"),a=(r==="absolute"||r==="fixed")&&v.inArray("auto",[o,u])>-1,f={},l={},c,h;a?(l=i.position(),c=l.top,h=l.left):(c=parseFloat(o)||0,h=parseFloat(u)||0),v.isFunction(t)&&(t=t.call(e,n,s)),t.top!=null&&(f.top=t.top-s.top+c),t.left!=null&&(f.left=t.left-s.left+h),"using"in t?t.using.call(e,f):i.css(f)}},v.fn.extend({position:function(){if(!this[0])return;var e=this[0],t=this.offsetParent(),n=this.offset(),r=er.test(t[0].nodeName)?{top:0,left:0}:t.offset();return n.top-=parseFloat(v.css(e,"marginTop"))||0,n.left-=parseFloat(v.css(e,"marginLeft"))||0,r.top+=parseFloat(v.css(t[0],"borderTopWidth"))||0,r.left+=parseFloat(v.css(t[0],"borderLeftWidth"))||0,{top:n.top-r.top,left:n.left-r.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||i.body;while(e&&!er.test(e.nodeName)&&v.css(e,"position")==="static")e=e.offsetParent;return e||i.body})}}),v.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);v.fn[e]=function(i){return v.access(this,function(e,i,s){var o=tr(e);if(s===t)return o?n in o?o[n]:o.document.documentElement[i]:e[i];o?o.scrollTo(r?v(o).scrollLeft():s,r?s:v(o).scrollTop()):e[i]=s},e,i,arguments.length,null)}}),v.each({Height:"height",Width:"width"},function(e,n){v.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){v.fn[i]=function(i,s){var o=arguments.length&&(r||typeof i!="boolean"),u=r||(i===!0||s===!0?"margin":"border");return v.access(this,function(n,r,i){var s;return v.isWindow(n)?n.document.documentElement["client"+e]:n.nodeType===9?(s=n.documentElement,Math.max(n.body["scroll"+e],s["scroll"+e],n.body["offset"+e],s["offset"+e],s["client"+e])):i===t?v.css(n,r,i,u):v.style(n,r,i,u)},n,o?i:t,o,null)}})}),e.jQuery=e.$=v,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return v})})(window); No newline at end of file
@@ -0,0 +1,128
1 /**
No newline at end of file
2 * @author Jose Antonio Sal y Rosas Celi
No newline at end of file
3 * @contact: jose.salyrosas@jro.igp.gob.pe, arturo.jasyrc@gmail.com
No newline at end of file
4 */
No newline at end of file
5
No newline at end of file
6 $(document).on('ready',function(){
No newline at end of file
7 $('#listProfiles').change(function() {
No newline at end of file
8 if($(this).val() != -1){
No newline at end of file
9 location.href = "/abscontrol/view/" + $(this).val();
No newline at end of file
10 }
No newline at end of file
11 });
No newline at end of file
12 $('#lnkAdd').click(function() {
No newline at end of file
13 profile_id = $("#profile_id").val();
No newline at end of file
14 location.href = "/abscontrol/" + profile_id + "/add/";
No newline at end of file
15 });
No newline at end of file
16 $('#lnkSave').click(function() {
No newline at end of file
17 $('#frmPattern').submit();
No newline at end of file
18 });
No newline at end of file
19 $('#lnkSavePattern').click(function() {
No newline at end of file
20 valueAntennaUp = "";
No newline at end of file
21 valueAntennaDown = "";
No newline at end of file
22 txtTxUp = "";
No newline at end of file
23 txtRxUp = "";
No newline at end of file
24 txtTxDown = "";
No newline at end of file
25 txtRxDown = "";
No newline at end of file
26 txtUesUp = "";
No newline at end of file
27 txtUesDown = "";
No newline at end of file
28 for(i=0; i<=7; i++){
No newline at end of file
29 if(i == 0){
No newline at end of file
30 valueAntennaUp += "[";
No newline at end of file
31 valueAntennaDown += "[";
No newline at end of file
32 txtTxUp += "[";
No newline at end of file
33 txtTxDown += "[";
No newline at end of file
34 txtRxUp += "[";
No newline at end of file
35 txtRxDown += "[";
No newline at end of file
36 }else{
No newline at end of file
37 valueAntennaUp += ",";
No newline at end of file
38 valueAntennaDown += ",";
No newline at end of file
39 txtTxUp += ",";
No newline at end of file
40 txtTxDown += ",";
No newline at end of file
41 txtRxUp += ",";
No newline at end of file
42 txtRxDown += ",";
No newline at end of file
43 }
No newline at end of file
44 for(j=0; j<=7; j++){
No newline at end of file
45 if(j == 0){
No newline at end of file
46 valueAntennaUp += "[";
No newline at end of file
47 valueAntennaDown += "[";
No newline at end of file
48 txtTxUp += "[";
No newline at end of file
49 txtTxDown += "[";
No newline at end of file
50 txtRxUp += "[";
No newline at end of file
51 txtRxDown += "[";
No newline at end of file
52 }
No newline at end of file
53 valueAntennaUp += $("input[id=txtUnitAntennaUp_"+i+"_"+j+"]").val();
No newline at end of file
54 valueAntennaDown += $("input[id=txtUnitAntennaDown_"+i+"_"+j+"]").val();
No newline at end of file
55 txtTxUp += $("input[id=txtUnitTxUp_"+i+"_"+j+"]").val();
No newline at end of file
56 txtTxDown += $("input[id=txtUnitTxDown_"+i+"_"+j+"]").val();
No newline at end of file
57 txtRxUp += $("input[id=txtUnitRxUp_"+i+"_"+j+"]").val();
No newline at end of file
58 txtRxDown += $("input[id=txtUnitRxDown_"+i+"_"+j+"]").val();
No newline at end of file
59 if(j != 7){
No newline at end of file
60 valueAntennaUp += ",";
No newline at end of file
61 valueAntennaDown += ",";
No newline at end of file
62 txtTxUp += ",";
No newline at end of file
63 txtTxDown += ",";
No newline at end of file
64 txtRxUp += ",";
No newline at end of file
65 txtRxDown += ",";
No newline at end of file
66 }else{
No newline at end of file
67 valueAntennaUp += "]";
No newline at end of file
68 valueAntennaDown += "]";
No newline at end of file
69 txtTxUp += "]";
No newline at end of file
70 txtTxDown += "]";
No newline at end of file
71 txtRxUp += "]";
No newline at end of file
72 txtRxDown += "]";
No newline at end of file
73 }
No newline at end of file
74 }
No newline at end of file
75 if(i == 7){
No newline at end of file
76 valueAntennaUp += "]";
No newline at end of file
77 valueAntennaDown += "]";
No newline at end of file
78 txtTxUp += "]";
No newline at end of file
79 txtTxDown += "]";
No newline at end of file
80 txtRxUp += "]";
No newline at end of file
81 txtRxDown += "]";
No newline at end of file
82 }
No newline at end of file
83 }
No newline at end of file
84
No newline at end of file
85 txtUesUp += "["
No newline at end of file
86 txtUesDown += "["
No newline at end of file
87
No newline at end of file
88 for(i=1;i<=4;i++){
No newline at end of file
89 txtUesUp += $("input[name=unitUesUp_"+i+"]").val();
No newline at end of file
90 txtUesDown += $("input[name=unitUesDown_"+i+"]").val();
No newline at end of file
91 if(i != 4){
No newline at end of file
92 txtUesUp += ","
No newline at end of file
93 txtUesDown += ","
No newline at end of file
94 }
No newline at end of file
95 }
No newline at end of file
96
No newline at end of file
97 txtUesUp += "]"
No newline at end of file
98 txtUesDown += "]"
No newline at end of file
99
No newline at end of file
100 $('input[name=txtAntennaUp]').attr("value",valueAntennaUp);
No newline at end of file
101 $('input[name=txtAntennaDown]').attr("value",valueAntennaDown);
No newline at end of file
102 $('input[name=txtTxUp]').attr("value",txtTxUp);
No newline at end of file
103 $('input[name=txtTxDown]').attr("value",txtTxDown);
No newline at end of file
104 $('input[name=txtRxUp]').attr("value",txtRxUp);
No newline at end of file
105 $('input[name=txtRxDown]').attr("value",txtRxDown);
No newline at end of file
106 $('input[name=txtUesUp]').attr("value",txtUesUp);
No newline at end of file
107 $('input[name=txtUesDown]').attr("value",txtUesDown);
No newline at end of file
108 $('#frmPattern').submit();
No newline at end of file
109 });
No newline at end of file
110 $('#lnkCancel').click(function() {
No newline at end of file
111 if ($("#pattern_id").val() == 0){
No newline at end of file
112 location.href = "/abscontrol/edit/" + $("#profile_id").val();
No newline at end of file
113 }else{
No newline at end of file
114 location.href = "/abscontrol/edit/" + $("#profile_id").val();
No newline at end of file
115 }
No newline at end of file
116 });
No newline at end of file
117 $('#lnkExport').click(function(){
No newline at end of file
118 profile_id = $(this).attr("alt");
No newline at end of file
119 location.href = "/abscontrol/export/" + profile_id + "/";
No newline at end of file
120 });
No newline at end of file
121 $('#lnkSendFile').click(function(){
No newline at end of file
122 profile_id = $(this).attr("alt");
No newline at end of file
123 location.href = "/abscontrol/send/" + profile_id + "/";
No newline at end of file
124 });
No newline at end of file
125 $('#lnkUpdateProfile').click(function(){
No newline at end of file
126 $('#frmProfile').submit();
No newline at end of file
127 });
No newline at end of file
128 }); No newline at end of file
@@ -0,0 +1,54
1 /**
No newline at end of file
2 * @author Jose Antonio Sal y Rosas Celi
No newline at end of file
3 * @contact: jose.salyrosas@jro.igp.gob.pe, arturo.jasyrc@gmail.com
No newline at end of file
4 */
No newline at end of file
5
No newline at end of file
6 $(document).on('ready',function(){
No newline at end of file
7 $('#listProfiles').change(function() {
No newline at end of file
8 if($(this).val() != -1){
No newline at end of file
9 location.href="/abscontrol/view/" + $(this).val();
No newline at end of file
10 }
No newline at end of file
11 });
No newline at end of file
12 $('.activeOverJRO').click(function() {
No newline at end of file
13 profile_id = $('input[name=txtProfileId]').val();
No newline at end of file
14 pattern_id = $('input[name=txtPatternId]').val();
No newline at end of file
15 field_Id = $(this).attr("id");
No newline at end of file
16 antenna_id = $('input[name=txtAntenna'+field_Id+'Id]').val();
No newline at end of file
17 result_url = "/abscontrol/"+profile_id+"/"+pattern_id+"/overjro"+field_Id+"/"+antenna_id+"/";
No newline at end of file
18 //location.href=url
No newline at end of file
19 ///*
No newline at end of file
20 $.ajax({
No newline at end of file
21 url: result_url,
No newline at end of file
22 cache: false,
No newline at end of file
23 beforeSend: function(){
No newline at end of file
24 },
No newline at end of file
25 success: function(){
No newline at end of file
26 $('#PictureOverJRO'+field_Id).load(result_url);
No newline at end of file
27 },
No newline at end of file
28 });
No newline at end of file
29 ///*
No newline at end of file
30 });
No newline at end of file
31 $('#lnkSaveImport').click(function(){
No newline at end of file
32 $('#frmImportProfile').submit();
No newline at end of file
33 });
No newline at end of file
34 $('#lnkUpload').click(function(){
No newline at end of file
35 $('#frmImport').submit();
No newline at end of file
36 });
No newline at end of file
37 $('#lnkExport').click(function(){
No newline at end of file
38 profile_id = $(this).attr("alt");
No newline at end of file
39 location.href="/abscontrol/export/" + profile_id + "/";
No newline at end of file
40 });
No newline at end of file
41 $('#lnkSendFile').click(function(){
No newline at end of file
42 profile_id = $(this).attr("alt");
No newline at end of file
43 location.href="/abscontrol/send/" + profile_id + "/";
No newline at end of file
44 });
No newline at end of file
45 $('#lnkChangeProfile').click(function(){
No newline at end of file
46 $('#frmProfile').submit();
No newline at end of file
47 });
No newline at end of file
48 $('.lnkChangePattern').click(function(){
No newline at end of file
49 profile_id = $("input[name=txtProfileId]").val();
No newline at end of file
50 pattern_id = $("input[name=txtPatternId]").val();
No newline at end of file
51
No newline at end of file
52 location.href="/abscontrol/change/"+profile_id+"/"+pattern_id+"/";
No newline at end of file
53 });
No newline at end of file
54 }); No newline at end of file
@@ -0,0 +1,248
1 {% extends "config/edit.html" %}
No newline at end of file
2
No newline at end of file
3 {% block mnuPattern %}
No newline at end of file
4 <div class="divMenu" id="divMnuPattern">
No newline at end of file
5 <nav class="MnuHorizontal">
No newline at end of file
6 <ul class="mnu" id="mnuPattern">
No newline at end of file
7 <li><a href="#" id="lnkCancel">Cancel</a></li>
No newline at end of file
8 <li><a href="#" id="lnkSavePattern">Save</a></li>
No newline at end of file
9 </ul>
No newline at end of file
10 </nav>
No newline at end of file
11 </div>
No newline at end of file
12 <div class="cleardivs"></div>
No newline at end of file
13 {% endblock %}
No newline at end of file
14 {% block pattern %}
No newline at end of file
15 <div id="divPattern">
No newline at end of file
16 <form action="{% url abscontrol.views.savePattern objProfile.id %}" id="frmPattern" method="post">
No newline at end of file
17 {% csrf_token %}
No newline at end of file
18 <div id="antennaUp" class="NewAntenna">
No newline at end of file
19 <fieldset class="NewFlsAntenna">
No newline at end of file
20 <legend class="legendAntenna">UP</legend>
No newline at end of file
21 <div class="NewDivAntenna">
No newline at end of file
22 <label for="lblAntenna" class="titleField">Antenna</label>
No newline at end of file
23 <div class="boxAntenna" id="divtxtAntenna">
No newline at end of file
24 {% for i in range %}
No newline at end of file
25 <div class="fullLine">
No newline at end of file
26 {% if i == 0 %}
No newline at end of file
27 <label for="lblSignLeft" class="lblSignLeft">[</label>
No newline at end of file
28 {% else %}
No newline at end of file
29 <label for="lblSignLeft" class="lblSignLeft">&nbsp;</label>
No newline at end of file
30 {% endif %}
No newline at end of file
31 <div class="lineInputs">
No newline at end of file
32 <label for="lblSign" class="lblSign">[</label>
No newline at end of file
33 <div class="divValuesAntenna">
No newline at end of file
34 {% for j in range %}
No newline at end of file
35 <input type="text" name="txtUnitAntennaUp" class="txtUnitAntenna" id="txtUnitAntennaUp_{{ i }}_{{ j }}" value="0.5" maxlength="3" />
No newline at end of file
36 {% if j != 7 %},{% endif %}
No newline at end of file
37 {% endfor %}
No newline at end of file
38 </div>
No newline at end of file
39 <label for="lblSign" class="lblSign">]</label>
No newline at end of file
40 </div>
No newline at end of file
41 {% if i == 7 %}
No newline at end of file
42 <label for="lblSignRight" class="lblSignRight">]</label>
No newline at end of file
43 {% else %}
No newline at end of file
44 <label for="lblSignRight" class="lblSignRight">,</label>
No newline at end of file
45 {% endif %}
No newline at end of file
46 </div>
No newline at end of file
47 <div class="cleardivs"></div>
No newline at end of file
48 {% endfor %}
No newline at end of file
49 </div>
No newline at end of file
50 </div>
No newline at end of file
51 <div class="NewDivTx">
No newline at end of file
52 <label for="lblTx" class="titleField">Tx</label>
No newline at end of file
53 <div class="boxTR" id="divtxtTR">
No newline at end of file
54 {% for i in range %}
No newline at end of file
55 <div class="fullLine">
No newline at end of file
56 {% if i == 0 %}
No newline at end of file
57 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
58 {% else %}
No newline at end of file
59 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
60 {% endif %}
No newline at end of file
61 <div class="lineInputsTx">
No newline at end of file
62 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
63 <div class="divValuesTx">
No newline at end of file
64 {% for j in range %}
No newline at end of file
65 <input type="text" name="txtUnitTxUp" class="txtUnitTx" id="txtUnitTxUp_{{ i }}_{{ j }}" value="1" maxlength="1" />
No newline at end of file
66 {% if j != 7 %},{% endif %}
No newline at end of file
67 {% endfor %}
No newline at end of file
68 </div>
No newline at end of file
69 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
70 </div>
No newline at end of file
71 {% if i == 7 %}
No newline at end of file
72 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
73 {% else %}
No newline at end of file
74 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
75 {% endif %}
No newline at end of file
76 </div>
No newline at end of file
77 <div class="cleardivs"></div>
No newline at end of file
78 {% endfor %}
No newline at end of file
79 </div>
No newline at end of file
80 <div class="cleardivs"></div>
No newline at end of file
81 </div>
No newline at end of file
82 <div class="NewDivTx">
No newline at end of file
83 <label for="lblRx" class="titleField">Rx</label>
No newline at end of file
84 <div class="boxTR" id="divtxtTR">
No newline at end of file
85 {% for i in range %}
No newline at end of file
86 <div class="fullLine">
No newline at end of file
87 {% if i == 0 %}
No newline at end of file
88 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
89 {% else %}
No newline at end of file
90 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
91 {% endif %}
No newline at end of file
92 <div class="lineInputsTx">
No newline at end of file
93 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
94 <div class="divValuesTx">
No newline at end of file
95 {% for j in range %}
No newline at end of file
96 <input type="text" name="txtUnitRxUp" class="txtUnitRx" id="txtUnitRxUp_{{ i }}_{{ j }}" value="0" maxlength="1" />
No newline at end of file
97 {% if j != 7 %},{% endif %}
No newline at end of file
98 {% endfor %}
No newline at end of file
99 </div>
No newline at end of file
100 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
101 </div>
No newline at end of file
102 {% if i == 7 %}
No newline at end of file
103 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
104 {% else %}
No newline at end of file
105 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
106 {% endif %}
No newline at end of file
107 </div>
No newline at end of file
108 <div class="cleardivs"></div>
No newline at end of file
109 {% endfor %}
No newline at end of file
110 </div>
No newline at end of file
111 <div class="cleardivs"></div>
No newline at end of file
112 </div>
No newline at end of file
113 <div class="cleardivs"></div>
No newline at end of file
114 <div class="divNewUes">
No newline at end of file
115 <label for="lblUes" class="titleUes">Ues:</label>
No newline at end of file
116 <div class="valueUes">
No newline at end of file
117 <label for="lblUes">[</label>
No newline at end of file
118 {% for element in arrayUes %}
No newline at end of file
119 <input type="text" name="unitUesUp_{{ forloop.counter }}" value="{{ element }}" maxlength="8" class="txtUnitUes" />
No newline at end of file
120 {% if not forloop.last %},{% endif %}
No newline at end of file
121 {% endfor %}
No newline at end of file
122 <label for="lblUes">]</label>
No newline at end of file
123 </div>
No newline at end of file
124 </div>
No newline at end of file
125 </fieldset>
No newline at end of file
126 <input type="hidden" name="txtAntennaUp" value="" />
No newline at end of file
127 <input type="hidden" name="txtTxUp" value="" />
No newline at end of file
128 <input type="hidden" name="txtRxUp" value="" />
No newline at end of file
129 <input type="hidden" name="txtUesUp" value="" />
No newline at end of file
130 </div>
No newline at end of file
131 <div id="antennaDown" class="NewAntenna">
No newline at end of file
132 <fieldset class="NewFlsAntenna">
No newline at end of file
133 <legend class="legendAntenna">DOWN</legend>
No newline at end of file
134 <div class="NewDivAntenna">
No newline at end of file
135 <label for="lblAntenna" class="titleField">Antenna</label>
No newline at end of file
136 <div class="boxAntenna" id="divtxtAntenna">
No newline at end of file
137 {% for i in range %}
No newline at end of file
138 <div class="fullLine">
No newline at end of file
139 {% if i == 0 %}
No newline at end of file
140 <label for="lblSignLeft" class="lblSignLeft">[</label>
No newline at end of file
141 {% else %}
No newline at end of file
142 <label for="lblSignLeft" class="lblSignLeft">&nbsp;</label>
No newline at end of file
143 {% endif %}
No newline at end of file
144 <div class="lineInputs">
No newline at end of file
145 <label for="lblSign" class="lblSign">[</label>
No newline at end of file
146 <div class="divValuesAntenna">
No newline at end of file
147 {% for j in range %}
No newline at end of file
148 <input type="text" name="txtUnitAntennaDown" class="txtUnitAntenna" id="txtUnitAntennaDown_{{ i }}_{{ j }}" value="0.5" maxlength="3" />
No newline at end of file
149 {% if j != 7 %},{% endif %}
No newline at end of file
150 {% endfor %}
No newline at end of file
151 </div>
No newline at end of file
152 <label for="lblSign" class="lblSign">]</label>
No newline at end of file
153 </div>
No newline at end of file
154 {% if i == 7 %}
No newline at end of file
155 <label for="lblSignRight" class="lblSignRight">]</label>
No newline at end of file
156 {% else %}
No newline at end of file
157 <label for="lblSignRight" class="lblSignRight">,</label>
No newline at end of file
158 {% endif %}
No newline at end of file
159 </div>
No newline at end of file
160 <div class="cleardivs"></div>
No newline at end of file
161 {% endfor %}
No newline at end of file
162 </div>
No newline at end of file
163 </div>
No newline at end of file
164 <div class="NewDivTx">
No newline at end of file
165 <label for="lblTx" class="titleField">Tx</label>
No newline at end of file
166 <div class="boxTR" id="divtxtTR">
No newline at end of file
167 {% for i in range %}
No newline at end of file
168 <div class="fullLine">
No newline at end of file
169 {% if i == 0 %}
No newline at end of file
170 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
171 {% else %}
No newline at end of file
172 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
173 {% endif %}
No newline at end of file
174 <div class="lineInputsTx">
No newline at end of file
175 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
176 <div class="divValuesTx">
No newline at end of file
177 {% for j in range %}
No newline at end of file
178 <input type="text" name="txtUnitTxDown" class="txtUnitTx" id="txtUnitTxDown_{{ i }}_{{ j }}" value="1" maxlength="1" />
No newline at end of file
179 {% if j != 7 %},{% endif %}
No newline at end of file
180 {% endfor %}
No newline at end of file
181 </div>
No newline at end of file
182 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
183 </div>
No newline at end of file
184 {% if i == 7 %}
No newline at end of file
185 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
186 {% else %}
No newline at end of file
187 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
188 {% endif %}
No newline at end of file
189 </div>
No newline at end of file
190 <div class="cleardivs"></div>
No newline at end of file
191 {% endfor %}
No newline at end of file
192 </div>
No newline at end of file
193 <div class="cleardivs"></div>
No newline at end of file
194 </div>
No newline at end of file
195 <div class="NewDivTx">
No newline at end of file
196 <label for="lblRx" class="titleField">Rx</label>
No newline at end of file
197 <div class="boxTR" id="divtxtTR">
No newline at end of file
198 {% for i in range %}
No newline at end of file
199 <div class="fullLine">
No newline at end of file
200 {% if i == 0 %}
No newline at end of file
201 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
202 {% else %}
No newline at end of file
203 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
204 {% endif %}
No newline at end of file
205 <div class="lineInputsTx">
No newline at end of file
206 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
207 <div class="divValuesTx">
No newline at end of file
208 {% for j in range %}
No newline at end of file
209 <input type="text" name="txtUnitRxDown" class="txtUnitRx" id="txtUnitRxDown_{{ i }}_{{ j }}" value="0" />
No newline at end of file
210 {% if j != 7 %},{% endif %}
No newline at end of file
211 {% endfor %}
No newline at end of file
212 </div>
No newline at end of file
213 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
214 </div>
No newline at end of file
215 {% if i == 7 %}
No newline at end of file
216 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
217 {% else %}
No newline at end of file
218 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
219 {% endif %}
No newline at end of file
220 </div>
No newline at end of file
221 <div class="cleardivs"></div>
No newline at end of file
222 {% endfor %}
No newline at end of file
223 </div>
No newline at end of file
224 <div class="cleardivs"></div>
No newline at end of file
225 </div>
No newline at end of file
226 <div class="cleardivs"></div>
No newline at end of file
227 <div class="divNewUes">
No newline at end of file
228 <label for="lblUes" class="titleUes">Ues:</label>
No newline at end of file
229 <div class="valueUes">
No newline at end of file
230 <label for="lblUes">[</label>
No newline at end of file
231 {% for element in arrayUes %}
No newline at end of file
232 <input type="text" name="unitUesDown_{{ forloop.counter }}" value="{{ element }}" maxlength="8" class="txtUnitUes" />
No newline at end of file
233 {% if not forloop.last %},{% endif %}
No newline at end of file
234 {% endfor %}
No newline at end of file
235 <label for="lblUes">]</label>
No newline at end of file
236 </div>
No newline at end of file
237 </div>
No newline at end of file
238 </fieldset>
No newline at end of file
239 <input type="hidden" name="txtAntennaDown" value="" />
No newline at end of file
240 <input type="hidden" name="txtTxDown" value="" />
No newline at end of file
241 <input type="hidden" name="txtRxDown" value="" />
No newline at end of file
242 <input type="hidden" name="txtUesDown" value="" />
No newline at end of file
243 </div>
No newline at end of file
244 <input type="hidden" name="profile_id" id="profile_id" value="{{ objProfile.id }}" />
No newline at end of file
245 <input type="hidden" name="mode" value="e">
No newline at end of file
246 </form>
No newline at end of file
247 </div>
No newline at end of file
248 {% endblock %} No newline at end of file
@@ -0,0 +1,39
1 {% extends "config/index.html" %}
No newline at end of file
2 {% block title %}ABS CONTROL:::::NEW PROFILE{% endblock %}
No newline at end of file
3 {% block scripting %}
No newline at end of file
4 <script src="{{ STATIC_URL }}js/profiles.js"></script>
No newline at end of file
5 {% endblock %}
No newline at end of file
6 {% block mnu_profile %}
No newline at end of file
7 <nav class="MnuHorizontal" id="mnuProfiles">
No newline at end of file
8 <ul>
No newline at end of file
9 <li><a href="#" id="lnkChangeProfile">Save</a></li>
No newline at end of file
10 <li><a href="{% url abscontrol.views.edit objProfile.id %}">Cancel</a></li>
No newline at end of file
11 </ul>
No newline at end of file
12 </nav>
No newline at end of file
13 {% endblock %}
No newline at end of file
14 {% block maincolumn%}
No newline at end of file
15 <div id="maincolumn">
No newline at end of file
16 <form action="{% url abscontrol.views.update objProfile.id %}" method="post" id="frmProfile">
No newline at end of file
17 {% csrf_token %}
No newline at end of file
18 <div id="divProfile">
No newline at end of file
19 <label for="lblName">Profile: {{ profile_name }}</label>
No newline at end of file
20 <input type="text" name="txtProfile" value="{{ objProfile.name }}"/>
No newline at end of file
21 </div>
No newline at end of file
22 <div class="cleardivs"></div>
No newline at end of file
23 <input type="hidden" name="mode" value="e">
No newline at end of file
24 </form>
No newline at end of file
25 <div id="navPatterns">
No newline at end of file
26 <nav class="" id="navPatternList">
No newline at end of file
27 <ul>
No newline at end of file
28 {% for element in lsPatterns %}
No newline at end of file
29 {% if patternChoosen.id == element.id %}
No newline at end of file
30 <li><a href="{% url abscontrol.views.editPattern objProfile.id element.id %}" class="lnkPatternSelected">{{ element.value }}</a></li>
No newline at end of file
31 {% else %}
No newline at end of file
32 <li><a href="{% url abscontrol.views.editPattern objProfile.id element.id %}" class="lnkPattern">{{ element.value }}</a></li>
No newline at end of file
33 {% endif %}
No newline at end of file
34 {% endfor %}
No newline at end of file
35 </ul>
No newline at end of file
36 </nav>
No newline at end of file
37 </div>
No newline at end of file
38 </div>
No newline at end of file
39 {% endblock %} No newline at end of file
@@ -0,0 +1,10
1 {% extends "base.html" %}
No newline at end of file
2 {% extends "config/index.html" %}
No newline at end of file
3
No newline at end of file
4 {% block content %}
No newline at end of file
5 {% block maincolumn %}
No newline at end of file
6 <div id="maincolumn">
No newline at end of file
7
No newline at end of file
8 </div>
No newline at end of file
9 {% endblock %}
No newline at end of file
10 {% endblock %} No newline at end of file
@@ -0,0 +1,314
1 {% extends "config/index.html" %}
No newline at end of file
2 {% block title %}ABS CONTROL:::PROFILE:::{{ objProfile.name }}{% endblock %}
No newline at end of file
3 {% block scripting %}
No newline at end of file
4 <script src="{{ STATIC_URL }}js/patterns.js"></script>
No newline at end of file
5 {% endblock %}
No newline at end of file
6 {% block mnu_profile %}
No newline at end of file
7 <nav class="MnuHorizontal" id="mnuProfiles">
No newline at end of file
8 <ul>
No newline at end of file
9 <li><a href="{% url abscontrol.views.new %}">New</a></li>
No newline at end of file
10 {% if objProfile and patternChoosen %}
No newline at end of file
11 <li><a href="{% url abscontrol.views.viewPattern objProfile.id patternChoosen.id %}">View</a></li>
No newline at end of file
12 {% endif %}
No newline at end of file
13 {% if objProfile.state == 0 %}
No newline at end of file
14 <li><a href="{% url abscontrol.views.changeName objProfile.id %}">Save</a></li>
No newline at end of file
15 {% else %}
No newline at end of file
16 <li><a href="#" id="lnkUpdateProfile">Save</a></li>
No newline at end of file
17 {% endif %}
No newline at end of file
18 <li><a href="#">Save as</a></li>
No newline at end of file
19 <li><a href="{% url abscontrol.views.importProfile %}">Import</a></li>
No newline at end of file
20 {% if objProfile %}
No newline at end of file
21 <li><a href="#" id="lnkExport" alt="{{ objProfile.id }}">Export</a></li>
No newline at end of file
22 {% endif %}
No newline at end of file
23 </ul>
No newline at end of file
24 </nav>
No newline at end of file
25 {% endblock %}
No newline at end of file
26 {% block maincolumn%}
No newline at end of file
27 <div id="maincolumn">
No newline at end of file
28 {% if objProfile.state == 1 %}
No newline at end of file
29 <form action="{% url abscontrol.views.update objProfile.id %}" method="post" id="frmProfile">
No newline at end of file
30 {% csrf_token %}
No newline at end of file
31 <div id="divProfile">
No newline at end of file
32 <label for="lblName">Profile:</label>
No newline at end of file
33 <input type="text" name="txtProfile" value="{{ objProfile.name }}"/>
No newline at end of file
34 </div>
No newline at end of file
35 <input type="hidden" name="mode" value="e">
No newline at end of file
36 </form>
No newline at end of file
37 {% else %}
No newline at end of file
38 <div id="divProfile">
No newline at end of file
39 <label for="lblName">Profile:</label>
No newline at end of file
40 <label for="lblName" class="lblProfile">{{ objProfile.name }}</label>
No newline at end of file
41 </div>
No newline at end of file
42 <div class="cleardivs"></div>
No newline at end of file
43 {% endif %}
No newline at end of file
44 {% if patternChoosen %}
No newline at end of file
45 <div id="navPatterns">
No newline at end of file
46 <nav class="" id="navPatternList">
No newline at end of file
47 <ul>
No newline at end of file
48 {% for element in lsPatterns %}
No newline at end of file
49 {% if patternChoosen.id == element.id %}
No newline at end of file
50 <li><a href="{% url abscontrol.views.editPattern objProfile.id element.id %}" class="lnkPatternSelected">{{ element.value }}</a></li>
No newline at end of file
51 {% else %}
No newline at end of file
52 <li><a href="{% url abscontrol.views.editPattern objProfile.id element.id %}" class="lnkPattern">{{ element.value }}</a></li>
No newline at end of file
53 {% endif %}
No newline at end of file
54 {% endfor %}
No newline at end of file
55 </ul>
No newline at end of file
56 </nav>
No newline at end of file
57 </div>
No newline at end of file
58 {% endif %}
No newline at end of file
59 {% block mnuPattern %}
No newline at end of file
60 <div class="divMenu" id="divMnuPattern">
No newline at end of file
61 <nav class="MnuHorizontal">
No newline at end of file
62 <ul class="mnu" id="mnuPattern">
No newline at end of file
63 {% if lsPatterns|length > 1 %}
No newline at end of file
64 <li><a href="{% url abscontrol.views.deletePattern objProfile.id patternChoosen.id %}">Delete</a></li>
No newline at end of file
65 {% endif %}
No newline at end of file
66 <li><a href="#" class="" id="lnkSavePattern">Save</a></li>
No newline at end of file
67 {% if lsPatterns|length < 10 %}
No newline at end of file
68 <li><a href="{% url abscontrol.views.addPattern objProfile.id %}">Add</a></li>
No newline at end of file
69 {% endif %}
No newline at end of file
70 </ul>
No newline at end of file
71 </nav>
No newline at end of file
72 </div>
No newline at end of file
73 <div class="cleardivs"></div>
No newline at end of file
74 {% endblock %}
No newline at end of file
75 {% block pattern %}
No newline at end of file
76 <div id="divPattern">
No newline at end of file
77 <form action="{% url abscontrol.views.savePattern objProfile.id %}" id="frmPattern" method="post">
No newline at end of file
78 {% csrf_token %}
No newline at end of file
79 <div id="antennaUp" class="NewAntenna">
No newline at end of file
80 <fieldset class="NewFlsAntenna">
No newline at end of file
81 <legend class="legendAntenna">UP</legend>
No newline at end of file
82 <div class="NewDivAntenna">
No newline at end of file
83 <label for="lblAntenna" class="titleField">Antenna</label>
No newline at end of file
84 <div class="boxAntenna" id="divtxtAntenna">
No newline at end of file
85 {% for lines in arrayAntennaUp %}
No newline at end of file
86 <div class="fullLine">
No newline at end of file
87 {% if forloop.first %}
No newline at end of file
88 <label for="lblSignLeft" class="lblSignLeft">[</label>
No newline at end of file
89 {% else %}
No newline at end of file
90 <label for="lblSignLeft" class="lblSignLeft">&nbsp;</label>
No newline at end of file
91 {% endif %}
No newline at end of file
92 <div class="lineInputs">
No newline at end of file
93 <label for="lblSign" class="lblSign">[</label>
No newline at end of file
94 <div class="divValuesAntenna">
No newline at end of file
95 {% for line in lines %}
No newline at end of file
96 <input type="text" name="txtUnitAntennaUp" class="txtUnitAntenna" id="txtUnitAntennaUp_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{line}}" maxlength="3" />
No newline at end of file
97 {% if not forloop.last %},{% endif %}
No newline at end of file
98 {% endfor %}
No newline at end of file
99 </div>
No newline at end of file
100 <label for="lblSign" class="lblSign">]</label>
No newline at end of file
101 </div>
No newline at end of file
102 {% if forloop.last %}
No newline at end of file
103 <label for="lblSignRight" class="lblSignRight">]</label>
No newline at end of file
104 {% else %}
No newline at end of file
105 <label for="lblSignRight" class="lblSignRight">,</label>
No newline at end of file
106 {% endif %}
No newline at end of file
107 </div>
No newline at end of file
108 <div class="cleardivs"></div>
No newline at end of file
109 {% endfor %}
No newline at end of file
110 </div>
No newline at end of file
111 </div>
No newline at end of file
112 <div class="NewDivTx">
No newline at end of file
113 <label for="lblTx" class="titleField">Tx</label>
No newline at end of file
114 <div class="boxTR" id="divtxtTR">
No newline at end of file
115 {% for lines in arrayTxUp %}
No newline at end of file
116 <div class="fullLine">
No newline at end of file
117 {% if forloop.first %}
No newline at end of file
118 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
119 {% else %}
No newline at end of file
120 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
121 {% endif %}
No newline at end of file
122 <div class="lineInputsTx">
No newline at end of file
123 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
124 <div class="divValuesTx">
No newline at end of file
125 {% for line in lines %}
No newline at end of file
126 <input type="text" name="txtUnitTxUp" class="txtUnitTx" id="txtUnitTxUp_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{ line }}" maxlength="1" />
No newline at end of file
127 {% if not forloop.last %},{% endif %}
No newline at end of file
128 {% endfor %}
No newline at end of file
129 </div>
No newline at end of file
130 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
131 </div>
No newline at end of file
132 {% if forloop.last %}
No newline at end of file
133 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
134 {% else %}
No newline at end of file
135 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
136 {% endif %}
No newline at end of file
137 </div>
No newline at end of file
138 <div class="cleardivs"></div>
No newline at end of file
139 {% endfor %}
No newline at end of file
140 </div>
No newline at end of file
141 <div class="cleardivs"></div>
No newline at end of file
142 </div>
No newline at end of file
143 <div class="NewDivTx">
No newline at end of file
144 <label for="lblRx" class="titleField">Rx</label>
No newline at end of file
145 <div class="boxTR" id="divtxtTR">
No newline at end of file
146 {% for lines in arrayRxUp %}
No newline at end of file
147 <div class="fullLine">
No newline at end of file
148 {% if forloop.first %}
No newline at end of file
149 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
150 {% else %}
No newline at end of file
151 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
152 {% endif %}
No newline at end of file
153 <div class="lineInputsTx">
No newline at end of file
154 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
155 <div class="divValuesTx">
No newline at end of file
156 {% for line in lines %}
No newline at end of file
157 <input type="text" name="txtUnitRxUp" class="txtUnitRx" id="txtUnitRxUp_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{ line }}" maxlength="1" />
No newline at end of file
158 {% if not forloop.last %},{% endif %}
No newline at end of file
159 {% endfor %}
No newline at end of file
160 </div>
No newline at end of file
161 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
162 </div>
No newline at end of file
163 {% if forloop.last %}
No newline at end of file
164 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
165 {% else %}
No newline at end of file
166 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
167 {% endif %}
No newline at end of file
168 </div>
No newline at end of file
169 <div class="cleardivs"></div>
No newline at end of file
170 {% endfor %}
No newline at end of file
171 </div>
No newline at end of file
172 <div class="cleardivs"></div>
No newline at end of file
173 </div>
No newline at end of file
174 <div class="cleardivs"></div>
No newline at end of file
175 <div class="divNewUes">
No newline at end of file
176 <label for="lblUes" class="titleUes">Ues:</label>
No newline at end of file
177 <div class="valueUes">
No newline at end of file
178 <label for="lblUes">[</label>
No newline at end of file
179 {% for element in arrayUesUp %}
No newline at end of file
180 <input type="text" name="unitUesUp_{{ forloop.counter }}" value="{{ element }}" maxlength="8" class="txtUnitUes" />
No newline at end of file
181 {% if not forloop.last %},{% endif %}
No newline at end of file
182 {% endfor %}
No newline at end of file
183 <label for="lblUes">]</label>
No newline at end of file
184 </div>
No newline at end of file
185 </div>
No newline at end of file
186 <input type="hidden" name="txtAntennaUpId" value="{{ antennaUp.id }}" />
No newline at end of file
187 </fieldset>
No newline at end of file
188 <input type="hidden" name="txtAntennaUp" value="" />
No newline at end of file
189 <input type="hidden" name="txtTxUp" value="" />
No newline at end of file
190 <input type="hidden" name="txtRxUp" value="" />
No newline at end of file
191 <input type="hidden" name="txtUesUp" value="" />
No newline at end of file
192 </div>
No newline at end of file
193 <div id="antennaDown" class="NewAntenna">
No newline at end of file
194 <fieldset class="NewFlsAntenna">
No newline at end of file
195 <legend class="legendAntenna">DOWN</legend>
No newline at end of file
196 <div class="NewDivAntenna">
No newline at end of file
197 <label for="lblAntenna" class="titleField">Antenna</label>
No newline at end of file
198 <div class="boxAntenna" id="divtxtAntenna">
No newline at end of file
199 {% for lines in arrayAntennaDown %}
No newline at end of file
200 <div class="fullLine">
No newline at end of file
201 {% if forloop.first %}
No newline at end of file
202 <label for="lblSignLeft" class="lblSignLeft">[</label>
No newline at end of file
203 {% else %}
No newline at end of file
204 <label for="lblSignLeft" class="lblSignLeft">&nbsp;</label>
No newline at end of file
205 {% endif %}
No newline at end of file
206 <div class="lineInputs">
No newline at end of file
207 <label for="lblSign" class="lblSign">[</label>
No newline at end of file
208 <div class="divValuesAntenna">
No newline at end of file
209 {% for line in lines %}
No newline at end of file
210 <input type="text" name="txtUnitAntennaDown" class="txtUnitAntenna" id="txtUnitAntennaDown_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{ line }}" maxlength="3" />
No newline at end of file
211 {% if not forloop.last %},{% endif %}
No newline at end of file
212 {% endfor %}
No newline at end of file
213 </div>
No newline at end of file
214 <label for="lblSign" class="lblSign">]</label>
No newline at end of file
215 </div>
No newline at end of file
216 {% if forloop.last %}
No newline at end of file
217 <label for="lblSignRight" class="lblSignRight">]</label>
No newline at end of file
218 {% else %}
No newline at end of file
219 <label for="lblSignRight" class="lblSignRight">,</label>
No newline at end of file
220 {% endif %}
No newline at end of file
221 </div>
No newline at end of file
222 <div class="cleardivs"></div>
No newline at end of file
223 {% endfor %}
No newline at end of file
224 </div>
No newline at end of file
225 </div>
No newline at end of file
226 <div class="NewDivTx">
No newline at end of file
227 <label for="lblTx" class="titleField">Tx</label>
No newline at end of file
228 <div class="boxTR" id="divtxtTR">
No newline at end of file
229 {% for lines in arrayTxDown %}
No newline at end of file
230 <div class="fullLine">
No newline at end of file
231 {% if forloop.first %}
No newline at end of file
232 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
233 {% else %}
No newline at end of file
234 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
235 {% endif %}
No newline at end of file
236 <div class="lineInputsTx">
No newline at end of file
237 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
238 <div class="divValuesTx">
No newline at end of file
239 {% for line in lines %}
No newline at end of file
240 <input type="text" name="txtUnitTxDown" class="txtUnitTx" id="txtUnitTxDown_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{ line }}" maxlength="1" />
No newline at end of file
241 {% if not forloop.last %},{% endif %}
No newline at end of file
242 {% endfor %}
No newline at end of file
243 </div>
No newline at end of file
244 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
245 </div>
No newline at end of file
246 {% if forloop.last %}
No newline at end of file
247 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
248 {% else %}
No newline at end of file
249 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
250 {% endif %}
No newline at end of file
251 </div>
No newline at end of file
252 <div class="cleardivs"></div>
No newline at end of file
253 {% endfor %}
No newline at end of file
254 </div>
No newline at end of file
255 <div class="cleardivs"></div>
No newline at end of file
256 </div>
No newline at end of file
257 <div class="NewDivTx">
No newline at end of file
258 <label for="lblRx" class="titleField">Rx</label>
No newline at end of file
259 <div class="boxTR" id="divtxtTR">
No newline at end of file
260 {% for lines in arrayRxDown %}
No newline at end of file
261 <div class="fullLine">
No newline at end of file
262 {% if forloop.first %}
No newline at end of file
263 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
264 {% else %}
No newline at end of file
265 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
266 {% endif %}
No newline at end of file
267 <div class="lineInputsTx">
No newline at end of file
268 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
269 <div class="divValuesTx">
No newline at end of file
270 {% for line in lines %}
No newline at end of file
271 <input type="text" name="txtUnitRxDown" class="txtUnitRx" id="txtUnitRxDown_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{ line }}" />
No newline at end of file
272 {% if not forloop.last %},{% endif %}
No newline at end of file
273 {% endfor %}
No newline at end of file
274 </div>
No newline at end of file
275 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
276 </div>
No newline at end of file
277 {% if forloop.last %}
No newline at end of file
278 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
279 {% else %}
No newline at end of file
280 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
281 {% endif %}
No newline at end of file
282 </div>
No newline at end of file
283 <div class="cleardivs"></div>
No newline at end of file
284 {% endfor %}
No newline at end of file
285 </div>
No newline at end of file
286 <div class="cleardivs"></div>
No newline at end of file
287 </div>
No newline at end of file
288 <div class="cleardivs"></div>
No newline at end of file
289 <div class="divNewUes">
No newline at end of file
290 <label for="lblUes" class="titleUes">Ues:</label>
No newline at end of file
291 <div class="valueUes">
No newline at end of file
292 <label for="lblUes">[</label>
No newline at end of file
293 {% for element in arrayUesDown %}
No newline at end of file
294 <input type="text" name="unitUesDown_{{ forloop.counter }}" value="{{ element }}" maxlength="8" class="txtUnitUes" />
No newline at end of file
295 {% if not forloop.last %},{% endif %}
No newline at end of file
296 {% endfor %}
No newline at end of file
297 <label for="lblUes">]</label>
No newline at end of file
298 </div>
No newline at end of file
299 </div>
No newline at end of file
300 <input type="hidden" name="txtAntennaDownId" value="{{ antennaDown.id }}" />
No newline at end of file
301 </fieldset>
No newline at end of file
302 <input type="hidden" name="txtAntennaDown" value="" />
No newline at end of file
303 <input type="hidden" name="txtTxDown" value="" />
No newline at end of file
304 <input type="hidden" name="txtRxDown" value="" />
No newline at end of file
305 <input type="hidden" name="txtUesDown" value="" />
No newline at end of file
306 </div>
No newline at end of file
307 <input type="hidden" name="pattern_id" id="pattern_id" value="{{ patternChoosen.id }}" />
No newline at end of file
308 <input type="hidden" name="profile_id" id="profile_id" value="{{ objProfile.id }}" />
No newline at end of file
309 <input type="hidden" name="mode" value="e">
No newline at end of file
310 </form>
No newline at end of file
311 </div>
No newline at end of file
312 {% endblock %}
No newline at end of file
313 </div>
No newline at end of file
314 {% endblock %} No newline at end of file
@@ -0,0 +1,264
1 {% extends "config/edit.html" %}
No newline at end of file
2
No newline at end of file
3 {% block mnuPattern %}
No newline at end of file
4 <div class="divMenu" id="divMnuPattern">
No newline at end of file
5 <nav class="MnuHorizontal">
No newline at end of file
6 <ul class="mnu" id="mnuPattern">
No newline at end of file
7 <li><a href="#" id="lnkCancel">Delete</a></li>
No newline at end of file
8 <li><a href="#" id="lnkSavePattern">Save</a></li>
No newline at end of file
9 {% if lsPatterns|length < 10 %}
No newline at end of file
10 <li><a href="#" id="lnkAdd">Add</a></li>
No newline at end of file
11 {% endif %}
No newline at end of file
12 </ul>
No newline at end of file
13 </nav>
No newline at end of file
14 </div>
No newline at end of file
15 <div class="cleardivs"></div>
No newline at end of file
16 {% endblock %}
No newline at end of file
17 {% block pattern %}
No newline at end of file
18 <div id="divPattern">
No newline at end of file
19 <form action="{% url abscontrol.views.savePattern objProfile.id %}" id="frmPattern" method="post">
No newline at end of file
20 {% csrf_token %}
No newline at end of file
21 <div id="antennaUp" class="NewAntenna">
No newline at end of file
22 <fieldset class="NewFlsAntenna">
No newline at end of file
23 <legend class="legendAntenna">UP</legend>
No newline at end of file
24 <div class="NewDivAntenna">
No newline at end of file
25 <label for="lblAntenna" class="titleField">Antenna</label>
No newline at end of file
26 <div class="boxAntenna" id="divtxtAntenna">
No newline at end of file
27 {% for lines in arrayAntennaUp %}
No newline at end of file
28 <div class="fullLine">
No newline at end of file
29 {% if forloop.first %}
No newline at end of file
30 <label for="lblSignLeft" class="lblSignLeft">[</label>
No newline at end of file
31 {% else %}
No newline at end of file
32 <label for="lblSignLeft" class="lblSignLeft">&nbsp;</label>
No newline at end of file
33 {% endif %}
No newline at end of file
34 <div class="lineInputs">
No newline at end of file
35 <label for="lblSign" class="lblSign">[</label>
No newline at end of file
36 <div class="divValuesAntenna">
No newline at end of file
37 {% for line in lines %}
No newline at end of file
38 <input type="text" name="txtUnitAntennaUp" class="txtUnitAntenna" id="txtUnitAntennaUp_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{line}}" maxlength="3" />
No newline at end of file
39 {% if not forloop.last %},{% endif %}
No newline at end of file
40 {% endfor %}
No newline at end of file
41 </div>
No newline at end of file
42 <label for="lblSign" class="lblSign">]</label>
No newline at end of file
43 </div>
No newline at end of file
44 {% if forloop.last %}
No newline at end of file
45 <label for="lblSignRight" class="lblSignRight">]</label>
No newline at end of file
46 {% else %}
No newline at end of file
47 <label for="lblSignRight" class="lblSignRight">,</label>
No newline at end of file
48 {% endif %}
No newline at end of file
49 </div>
No newline at end of file
50 <div class="cleardivs"></div>
No newline at end of file
51 {% endfor %}
No newline at end of file
52 </div>
No newline at end of file
53 </div>
No newline at end of file
54 <div class="NewDivTx">
No newline at end of file
55 <label for="lblTx" class="titleField">Tx</label>
No newline at end of file
56 <div class="boxTR" id="divtxtTR">
No newline at end of file
57 {% for lines in arrayTxUp %}
No newline at end of file
58 <div class="fullLine">
No newline at end of file
59 {% if forloop.first %}
No newline at end of file
60 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
61 {% else %}
No newline at end of file
62 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
63 {% endif %}
No newline at end of file
64 <div class="lineInputsTx">
No newline at end of file
65 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
66 <div class="divValuesTx">
No newline at end of file
67 {% for line in lines %}
No newline at end of file
68 <input type="text" name="txtUnitTxUp" class="txtUnitTx" id="txtUnitTxUp_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{ line }}" maxlength="1" />
No newline at end of file
69 {% if not forloop.last %},{% endif %}
No newline at end of file
70 {% endfor %}
No newline at end of file
71 </div>
No newline at end of file
72 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
73 </div>
No newline at end of file
74 {% if forloop.last %}
No newline at end of file
75 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
76 {% else %}
No newline at end of file
77 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
78 {% endif %}
No newline at end of file
79 </div>
No newline at end of file
80 <div class="cleardivs"></div>
No newline at end of file
81 {% endfor %}
No newline at end of file
82 </div>
No newline at end of file
83 <div class="cleardivs"></div>
No newline at end of file
84 </div>
No newline at end of file
85 <div class="NewDivTx">
No newline at end of file
86 <label for="lblRx" class="titleField">Rx</label>
No newline at end of file
87 <div class="boxTR" id="divtxtTR">
No newline at end of file
88 {% for lines in arrayRxUp %}
No newline at end of file
89 <div class="fullLine">
No newline at end of file
90 {% if forloop.first %}
No newline at end of file
91 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
92 {% else %}
No newline at end of file
93 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
94 {% endif %}
No newline at end of file
95 <div class="lineInputsTx">
No newline at end of file
96 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
97 <div class="divValuesTx">
No newline at end of file
98 {% for line in lines %}
No newline at end of file
99 <input type="text" name="txtUnitRxUp" class="txtUnitRx" id="txtUnitRxUp_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{ line }}" maxlength="1" />
No newline at end of file
100 {% if not forloop.last %},{% endif %}
No newline at end of file
101 {% endfor %}
No newline at end of file
102 </div>
No newline at end of file
103 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
104 </div>
No newline at end of file
105 {% if forloop.last %}
No newline at end of file
106 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
107 {% else %}
No newline at end of file
108 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
109 {% endif %}
No newline at end of file
110 </div>
No newline at end of file
111 <div class="cleardivs"></div>
No newline at end of file
112 {% endfor %}
No newline at end of file
113 </div>
No newline at end of file
114 <div class="cleardivs"></div>
No newline at end of file
115 </div>
No newline at end of file
116 <div class="cleardivs"></div>
No newline at end of file
117 <div class="divNewUes">
No newline at end of file
118 <label for="lblUes" class="titleUes">Ues:</label>
No newline at end of file
119 <div class="valueUes">
No newline at end of file
120 <label for="lblUes">[</label>
No newline at end of file
121 {% for element in arrayUesUp %}
No newline at end of file
122 <input type="text" name="unitUesUp_{{ forloop.counter }}" value="{{ element }}" maxlength="8" class="txtUnitUes" />
No newline at end of file
123 {% if not forloop.last %},{% endif %}
No newline at end of file
124 {% endfor %}
No newline at end of file
125 <label for="lblUes">]</label>
No newline at end of file
126 </div>
No newline at end of file
127 </div>
No newline at end of file
128 <div class="cleardivs"></div>
No newline at end of file
129 <div class="divOnlyRx">
No newline at end of file
130 <input type="checkbox" name="chkOnlyRxUp" value="1" {% if antennaUp.only_rx == 1 %}checked{% endif %} />
No newline at end of file
131 <label for="lblOnlyRx" class="titleOnlyRx">Only Rx</label>
No newline at end of file
132 </div>
No newline at end of file
133 <input type="hidden" name="txtAntennaUpId" value="{{ antennaUp.id }}" />
No newline at end of file
134 </fieldset>
No newline at end of file
135 <input type="hidden" name="txtAntennaUp" value="" />
No newline at end of file
136 <input type="hidden" name="txtTxUp" value="" />
No newline at end of file
137 <input type="hidden" name="txtRxUp" value="" />
No newline at end of file
138 <input type="hidden" name="txtUesUp" value="" />
No newline at end of file
139 </div>
No newline at end of file
140 <div id="antennaDown" class="NewAntenna">
No newline at end of file
141 <fieldset class="NewFlsAntenna">
No newline at end of file
142 <legend class="legendAntenna">DOWN</legend>
No newline at end of file
143 <div class="NewDivAntenna">
No newline at end of file
144 <label for="lblAntenna" class="titleField">Antenna</label>
No newline at end of file
145 <div class="boxAntenna" id="divtxtAntenna">
No newline at end of file
146 {% for lines in arrayAntennaDown %}
No newline at end of file
147 <div class="fullLine">
No newline at end of file
148 {% if forloop.first %}
No newline at end of file
149 <label for="lblSignLeft" class="lblSignLeft">[</label>
No newline at end of file
150 {% else %}
No newline at end of file
151 <label for="lblSignLeft" class="lblSignLeft">&nbsp;</label>
No newline at end of file
152 {% endif %}
No newline at end of file
153 <div class="lineInputs">
No newline at end of file
154 <label for="lblSign" class="lblSign">[</label>
No newline at end of file
155 <div class="divValuesAntenna">
No newline at end of file
156 {% for line in lines %}
No newline at end of file
157 <input type="text" name="txtUnitAntennaDown" class="txtUnitAntenna" id="txtUnitAntennaDown_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{ line }}" maxlength="3" />
No newline at end of file
158 {% if not forloop.last %},{% endif %}
No newline at end of file
159 {% endfor %}
No newline at end of file
160 </div>
No newline at end of file
161 <label for="lblSign" class="lblSign">]</label>
No newline at end of file
162 </div>
No newline at end of file
163 {% if forloop.last %}
No newline at end of file
164 <label for="lblSignRight" class="lblSignRight">]</label>
No newline at end of file
165 {% else %}
No newline at end of file
166 <label for="lblSignRight" class="lblSignRight">,</label>
No newline at end of file
167 {% endif %}
No newline at end of file
168 </div>
No newline at end of file
169 <div class="cleardivs"></div>
No newline at end of file
170 {% endfor %}
No newline at end of file
171 </div>
No newline at end of file
172 </div>
No newline at end of file
173 <div class="NewDivTx">
No newline at end of file
174 <label for="lblTx" class="titleField">Tx</label>
No newline at end of file
175 <div class="boxTR" id="divtxtTR">
No newline at end of file
176 {% for lines in arrayTxDown %}
No newline at end of file
177 <div class="fullLine">
No newline at end of file
178 {% if forloop.first %}
No newline at end of file
179 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
180 {% else %}
No newline at end of file
181 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
182 {% endif %}
No newline at end of file
183 <div class="lineInputsTx">
No newline at end of file
184 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
185 <div class="divValuesTx">
No newline at end of file
186 {% for line in lines %}
No newline at end of file
187 <input type="text" name="txtUnitTxDown" class="txtUnitTx" id="txtUnitTxDown_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{ line }}" maxlength="1" />
No newline at end of file
188 {% if not forloop.last %},{% endif %}
No newline at end of file
189 {% endfor %}
No newline at end of file
190 </div>
No newline at end of file
191 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
192 </div>
No newline at end of file
193 {% if forloop.last %}
No newline at end of file
194 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
195 {% else %}
No newline at end of file
196 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
197 {% endif %}
No newline at end of file
198 </div>
No newline at end of file
199 <div class="cleardivs"></div>
No newline at end of file
200 {% endfor %}
No newline at end of file
201 </div>
No newline at end of file
202 <div class="cleardivs"></div>
No newline at end of file
203 </div>
No newline at end of file
204 <div class="NewDivTx">
No newline at end of file
205 <label for="lblRx" class="titleField">Rx</label>
No newline at end of file
206 <div class="boxTR" id="divtxtTR">
No newline at end of file
207 {% for lines in arrayRxDown %}
No newline at end of file
208 <div class="fullLine">
No newline at end of file
209 {% if forloop.first %}
No newline at end of file
210 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
211 {% else %}
No newline at end of file
212 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
213 {% endif %}
No newline at end of file
214 <div class="lineInputsTx">
No newline at end of file
215 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
216 <div class="divValuesTx">
No newline at end of file
217 {% for line in lines %}
No newline at end of file
218 <input type="text" name="txtUnitRxDown" class="txtUnitRx" id="txtUnitRxDown_{{ forloop.parentloop.counter0 }}_{{ forloop.counter0 }}" value="{{ line }}" />
No newline at end of file
219 {% if not forloop.last %},{% endif %}
No newline at end of file
220 {% endfor %}
No newline at end of file
221 </div>
No newline at end of file
222 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
223 </div>
No newline at end of file
224 {% if forloop.last %}
No newline at end of file
225 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
226 {% else %}
No newline at end of file
227 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
228 {% endif %}
No newline at end of file
229 </div>
No newline at end of file
230 <div class="cleardivs"></div>
No newline at end of file
231 {% endfor %}
No newline at end of file
232 </div>
No newline at end of file
233 <div class="cleardivs"></div>
No newline at end of file
234 </div>
No newline at end of file
235 <div class="cleardivs"></div>
No newline at end of file
236 <div class="divNewUes">
No newline at end of file
237 <label for="lblUes" class="titleUes">Ues:</label>
No newline at end of file
238 <div class="valueUes">
No newline at end of file
239 <label for="lblUes">[</label>
No newline at end of file
240 {% for element in arrayUesDown %}
No newline at end of file
241 <input type="text" name="unitUesDown_{{ forloop.counter }}" value="{{ element }}" maxlength="8" class="txtUnitUes" />
No newline at end of file
242 {% if not forloop.last %},{% endif %}
No newline at end of file
243 {% endfor %}
No newline at end of file
244 <label for="lblUes">]</label>
No newline at end of file
245 </div>
No newline at end of file
246 </div>
No newline at end of file
247 <div class="cleardivs"></div>
No newline at end of file
248 <div class="divOnlyRx">
No newline at end of file
249 <input type="checkbox" name="chkOnlyRxDown" value="1" {% if antennaDown.only_rx == 1 %}checked{% endif %} />
No newline at end of file
250 <label for="lblOnlyRx" class="titleOnlyRx">Only Rx</label>
No newline at end of file
251 </div>
No newline at end of file
252 <input type="hidden" name="txtAntennaDownId" value="{{ antennaDown.id }}" />
No newline at end of file
253 </fieldset>
No newline at end of file
254 <input type="hidden" name="txtAntennaDown" value="" />
No newline at end of file
255 <input type="hidden" name="txtTxDown" value="" />
No newline at end of file
256 <input type="hidden" name="txtRxDown" value="" />
No newline at end of file
257 <input type="hidden" name="txtUesDown" value="" />
No newline at end of file
258 </div>
No newline at end of file
259 <input type="hidden" name="pattern_id" id="pattern_id" value="{{ patternChoosen.id }}" />
No newline at end of file
260 <input type="hidden" name="profile_id" id="profile_id" value="{{ objProfile.id }}" />
No newline at end of file
261 <input type="hidden" name="mode" value="e">
No newline at end of file
262 </form>
No newline at end of file
263 </div>
No newline at end of file
264 {% endblock %} No newline at end of file
@@ -0,0 +1,23
1 {% extends "config/index.html" %}
No newline at end of file
2 {% block title %}ABS CONTROL:::::IMPORT PROFILE{% endblock %}
No newline at end of file
3 {% block scripting %}
No newline at end of file
4 <script src="{{ STATIC_URL }}js/profiles.js"></script>
No newline at end of file
5 {% endblock %}
No newline at end of file
6 {% block mnu_profile %}
No newline at end of file
7 <nav class="MnuHorizontal" id="mnuProfiles">
No newline at end of file
8 <ul>
No newline at end of file
9 <li><a href="{% url abscontrol.views.new %}">New</a></li>
No newline at end of file
10 <li><a href="{% url abscontrol.views.importProfile %}">Import</a></li>
No newline at end of file
11 </ul>
No newline at end of file
12 </nav>
No newline at end of file
13 {% endblock %}
No newline at end of file
14 {% block maincolumn %}
No newline at end of file
15 <div id="maincolumn">
No newline at end of file
16 <div id="divPattern">
No newline at end of file
17 <div class="divUes">
No newline at end of file
18 <label for="lblError">Error:</label>
No newline at end of file
19 <p>{{ txtError }}</p>
No newline at end of file
20 </div>
No newline at end of file
21 </div>
No newline at end of file
22 </div>
No newline at end of file
23 {% endblock %} No newline at end of file
@@ -0,0 +1,22
1 {% extends "config/index.html" %}
No newline at end of file
2 {% block title %}ABS CONTROL:::::IMPORT PROFILE{% endblock %}
No newline at end of file
3
No newline at end of file
4 {% block mnu_profile %}
No newline at end of file
5 <nav class="MnuHorizontal" id="mnuProfiles">
No newline at end of file
6 <ul>
No newline at end of file
7 <li><a href="#" id="lnkUpload">Upload</a></li>
No newline at end of file
8 <li><a href="#" id="lnkCancel">Cancel</a></li>
No newline at end of file
9 </ul>
No newline at end of file
10 </nav>
No newline at end of file
11 {% endblock %}
No newline at end of file
12 {% block maincolumn %}
No newline at end of file
13 <div id="maincolumn">
No newline at end of file
14 <form name="frmImport" id="frmImport" action="{% url abscontrol.views.upload %}" method="post" enctype="multipart/form-data">
No newline at end of file
15 {% csrf_token %}
No newline at end of file
16 <div id="divProfile">
No newline at end of file
17 <label for="lblFile">Choose File:</label>
No newline at end of file
18 <input type="file" name="txtFile" />
No newline at end of file
19 </div>
No newline at end of file
20 </form>
No newline at end of file
21 </div>
No newline at end of file
22 {% endblock %} No newline at end of file
@@ -0,0 +1,71
1 {% extends "base.html" %}
No newline at end of file
2
No newline at end of file
3 {% block title %}ABS CONTROL:::::{% endblock %}
No newline at end of file
4 {% block scripting %}
No newline at end of file
5 {% if profile_list %}
No newline at end of file
6 <script src="{{ STATIC_URL }}js/profiles.js"></script>
No newline at end of file
7 {% endif %}
No newline at end of file
8 {% endblock %}
No newline at end of file
9 {% block header %}
No newline at end of file
10 <nav id="header">
No newline at end of file
11 <a href="{% url abscontrol.views.index %}" class="selected">ABS</a>
No newline at end of file
12 <a href="#">CR</a>
No newline at end of file
13 <a href="#">DDS</a>
No newline at end of file
14 <a href="#">JARS</a>
No newline at end of file
15 </nav>
No newline at end of file
16 {% endblock %}
No newline at end of file
17 {% block content %}
No newline at end of file
18 <div id="content">
No newline at end of file
19 {% block topcolumn %}
No newline at end of file
20 <div id="topcolumn">
No newline at end of file
21 <div id="lsProfiles">
No newline at end of file
22 <div id="infoProfiles">
No newline at end of file
23 <label for="lblProfile" class="lblInfo">Profiles: </label>
No newline at end of file
24 {% if profile_list %}
No newline at end of file
25 <select name="lsProfiles" id="listProfiles">
No newline at end of file
26 <option value="-1">Choose ...</option>
No newline at end of file
27 {% for entry in profile_list %}
No newline at end of file
28 {% if objProfile %}
No newline at end of file
29 {% if objProfile.id == entry.id %}
No newline at end of file
30 <option value="{{ entry.id }}" selected>{{ entry.name }}</option>
No newline at end of file
31 {% else %}
No newline at end of file
32 <option value="{{ entry.id }}">{{ entry.name }}</option>
No newline at end of file
33 {% endif %}
No newline at end of file
34 {% else %}
No newline at end of file
35 <option value="{{ entry.id }}">{{ entry.name }}</option>
No newline at end of file
36 {% endif %}
No newline at end of file
37 {% endfor %}
No newline at end of file
38 </select>
No newline at end of file
39 {% else %}
No newline at end of file
40 <label for="lblMessage" class="lblInfo">No profiles.</label>
No newline at end of file
41 {% endif %}
No newline at end of file
42 </div>
No newline at end of file
43 </div>
No newline at end of file
44 {% block mnu_profile %}
No newline at end of file
45 <div id="mnuProfiles">
No newline at end of file
46 <nav class="MnuHorizontal" id="navProfiles">
No newline at end of file
47 <ul>
No newline at end of file
48 <li><a href="{% url abscontrol.views.new %}">New</a></li>
No newline at end of file
49 {% if objProfile %}
No newline at end of file
50 <li><a href="{% url abscontrol.views.edit objProfile.id %}">Edit</a></li>
No newline at end of file
51 <li><a href="#">Save</a></li>
No newline at end of file
52 {% endif %}
No newline at end of file
53 <li><a href="{% url abscontrol.views.importProfile %}">Import</a></li>
No newline at end of file
54 {% if objProfile %}
No newline at end of file
55 <li><a href="#" id="lnkExport" alt="{{ objProfile.id }}">Export</a></li>
No newline at end of file
56 <li><a href="#" id="lnkSendFile" alt="{{ objProfile.id }}">Send</a></li>
No newline at end of file
57 {% endif %}
No newline at end of file
58 </ul>
No newline at end of file
59 <div class="cleardivs"></div>
No newline at end of file
60 </nav>
No newline at end of file
61 </div>
No newline at end of file
62 {% endblock %}
No newline at end of file
63 <div class="cleardivs"></div>
No newline at end of file
64 </div>
No newline at end of file
65 {% endblock %}
No newline at end of file
66 {% block maincolumn %}
No newline at end of file
67 <div id="maincolumn" style="height: 50px"></div>
No newline at end of file
68 {% endblock %}
No newline at end of file
69 <div class="cleardivs"></div>
No newline at end of file
70 </div>
No newline at end of file
71 {% endblock %} No newline at end of file
@@ -0,0 +1,264
1 {% extends "config/index.html" %}
No newline at end of file
2 {% load url from future %}
No newline at end of file
3 {% block title %}ABS CONTROL:::::NEW PROFILE{% endblock %}
No newline at end of file
4 {% block scripting %}
No newline at end of file
5 <script src="{{ STATIC_URL }}js/patterns.js"></script>
No newline at end of file
6 {% endblock %}
No newline at end of file
7 {% block maincolumn%}
No newline at end of file
8 <div id="maincolumn">
No newline at end of file
9 <form action="{% url abscontrol.views.upgrade profile_id %}" method="post" id="frmPattern">
No newline at end of file
10 {% csrf_token %}
No newline at end of file
11 <div id="divProfile">
No newline at end of file
12 <label for="lblName">Profile:</label>
No newline at end of file
13 <label for="lblName" class="lblProfile">{{ profile_name }}</label>
No newline at end of file
14 </div>
No newline at end of file
15 {% block mnuPattern %}
No newline at end of file
16 <div class="divMenu" id="divMnuPattern">
No newline at end of file
17 <nav class="MnuHorizontal">
No newline at end of file
18 <ul class="mnu" id="mnuPattern">
No newline at end of file
19 <li><a href="#" id="lnkSavePattern">Save</a></li>
No newline at end of file
20 </ul>
No newline at end of file
21 </nav>
No newline at end of file
22 </div>
No newline at end of file
23 <div class="cleardivs"></div>
No newline at end of file
24 {% endblock %}
No newline at end of file
25 <div id="divPattern">
No newline at end of file
26 <div id="antennaUp" class="NewAntenna">
No newline at end of file
27 <fieldset class="NewFlsAntenna">
No newline at end of file
28 <legend class="legendAntenna">UP</legend>
No newline at end of file
29 <div class="NewDivAntenna">
No newline at end of file
30 <label for="lblAntenna" class="titleField">Antenna</label>
No newline at end of file
31 <div class="boxAntenna" id="divtxtAntenna">
No newline at end of file
32 {% for i in range %}
No newline at end of file
33 <div class="fullLine">
No newline at end of file
34 {% if i == 0 %}
No newline at end of file
35 <label for="lblSignLeft" class="lblSignLeft">[</label>
No newline at end of file
36 {% else %}
No newline at end of file
37 <label for="lblSignLeft" class="lblSignLeft">&nbsp;</label>
No newline at end of file
38 {% endif %}
No newline at end of file
39 <div class="lineInputs">
No newline at end of file
40 <label for="lblSign" class="lblSign">[</label>
No newline at end of file
41 <div class="divValuesAntenna">
No newline at end of file
42 {% for j in range %}
No newline at end of file
43 <input type="text" name="txtUnitAntennaUp" class="txtUnitAntenna" id="txtUnitAntennaUp_{{ i }}_{{ j }}" value="0.5" maxlength="3" />
No newline at end of file
44 {% if j != 7 %},{% endif %}
No newline at end of file
45 {% endfor %}
No newline at end of file
46 </div>
No newline at end of file
47 <label for="lblSign" class="lblSign">]</label>
No newline at end of file
48 </div>
No newline at end of file
49 {% if i == 7 %}
No newline at end of file
50 <label for="lblSignRight" class="lblSignRight">]</label>
No newline at end of file
51 {% else %}
No newline at end of file
52 <label for="lblSignRight" class="lblSignRight">,</label>
No newline at end of file
53 {% endif %}
No newline at end of file
54 </div>
No newline at end of file
55 <div class="cleardivs"></div>
No newline at end of file
56 {% endfor %}
No newline at end of file
57 </div>
No newline at end of file
58 </div>
No newline at end of file
59 <div class="NewDivTx">
No newline at end of file
60 <label for="lblTx" class="titleField">Tx</label>
No newline at end of file
61 <div class="boxTR" id="divtxtTR">
No newline at end of file
62 {% for i in range %}
No newline at end of file
63 <div class="fullLine">
No newline at end of file
64 {% if i == 0 %}
No newline at end of file
65 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
66 {% else %}
No newline at end of file
67 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
68 {% endif %}
No newline at end of file
69 <div class="lineInputsTx">
No newline at end of file
70 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
71 <div class="divValuesTx">
No newline at end of file
72 {% for j in range %}
No newline at end of file
73 <input type="text" name="txtUnitTxUp" class="txtUnitTx" id="txtUnitTxUp_{{ i }}_{{ j }}" value="1" maxlength="1" />
No newline at end of file
74 {% if j != 7 %},{% endif %}
No newline at end of file
75 {% endfor %}
No newline at end of file
76 </div>
No newline at end of file
77 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
78 </div>
No newline at end of file
79 {% if i == 7 %}
No newline at end of file
80 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
81 {% else %}
No newline at end of file
82 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
83 {% endif %}
No newline at end of file
84 </div>
No newline at end of file
85 <div class="cleardivs"></div>
No newline at end of file
86 {% endfor %}
No newline at end of file
87 </div>
No newline at end of file
88 <div class="cleardivs"></div>
No newline at end of file
89 </div>
No newline at end of file
90 <div class="NewDivTx">
No newline at end of file
91 <label for="lblRx" class="titleField">Rx</label>
No newline at end of file
92 <div class="boxTR" id="divtxtTR">
No newline at end of file
93 {% for i in range %}
No newline at end of file
94 <div class="fullLine">
No newline at end of file
95 {% if i == 0 %}
No newline at end of file
96 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
97 {% else %}
No newline at end of file
98 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
99 {% endif %}
No newline at end of file
100 <div class="lineInputsTx">
No newline at end of file
101 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
102 <div class="divValuesTx">
No newline at end of file
103 {% for j in range %}
No newline at end of file
104 <input type="text" name="txtUnitRxUp" class="txtUnitRx" id="txtUnitRxUp_{{ i }}_{{ j }}" value="0" maxlength="1" />
No newline at end of file
105 {% if j != 7 %},{% endif %}
No newline at end of file
106 {% endfor %}
No newline at end of file
107 </div>
No newline at end of file
108 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
109 </div>
No newline at end of file
110 {% if i == 7 %}
No newline at end of file
111 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
112 {% else %}
No newline at end of file
113 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
114 {% endif %}
No newline at end of file
115 </div>
No newline at end of file
116 <div class="cleardivs"></div>
No newline at end of file
117 {% endfor %}
No newline at end of file
118 </div>
No newline at end of file
119 <div class="cleardivs"></div>
No newline at end of file
120 </div>
No newline at end of file
121 <div class="cleardivs"></div>
No newline at end of file
122 <div class="divNewUes">
No newline at end of file
123 <label for="lblUes" class="titleUes">Ues:</label>
No newline at end of file
124 <div class="valueUes">
No newline at end of file
125 <label for="lblUes">[</label>
No newline at end of file
126 {% for element in arrayUes %}
No newline at end of file
127 <input type="text" name="unitUesUp_{{ forloop.counter }}" value="{{ element }}" maxlength="8" class="txtUnitUes" />
No newline at end of file
128 {% if not forloop.last %},{% endif %}
No newline at end of file
129 {% endfor %}
No newline at end of file
130 <label for="lblUes">]</label>
No newline at end of file
131 </div>
No newline at end of file
132 </div>
No newline at end of file
133 <div class="checkOnly">
No newline at end of file
134 <input type="checkbox" name="chkOnlyRxUp" value="" />
No newline at end of file
135 <label for="lblOnlyRx">Only Rx</label>
No newline at end of file
136 </div>
No newline at end of file
137 </fieldset>
No newline at end of file
138 <input type="hidden" name="txtAntennaUp" value="" />
No newline at end of file
139 <input type="hidden" name="txtTxUp" value="" />
No newline at end of file
140 <input type="hidden" name="txtRxUp" value="" />
No newline at end of file
141 <input type="hidden" name="txtUesUp" value="" />
No newline at end of file
142 </div>
No newline at end of file
143 <div id="antennaDown" class="NewAntenna">
No newline at end of file
144 <fieldset class="NewFlsAntenna">
No newline at end of file
145 <legend class="legendAntenna">DOWN</legend>
No newline at end of file
146 <div class="NewDivAntenna">
No newline at end of file
147 <label for="lblAntenna" class="titleField">Antenna</label>
No newline at end of file
148 <div class="boxAntenna" id="divtxtAntenna">
No newline at end of file
149 {% for i in range %}
No newline at end of file
150 <div class="fullLine">
No newline at end of file
151 {% if i == 0 %}
No newline at end of file
152 <label for="lblSignLeft" class="lblSignLeft">[</label>
No newline at end of file
153 {% else %}
No newline at end of file
154 <label for="lblSignLeft" class="lblSignLeft">&nbsp;</label>
No newline at end of file
155 {% endif %}
No newline at end of file
156 <div class="lineInputs">
No newline at end of file
157 <label for="lblSign" class="lblSign">[</label>
No newline at end of file
158 <div class="divValuesAntenna">
No newline at end of file
159 {% for j in range %}
No newline at end of file
160 <input type="text" name="txtUnitAntennaDown" class="txtUnitAntenna" id="txtUnitAntennaDown_{{ i }}_{{ j }}" value="0.5" maxlength="3" />
No newline at end of file
161 {% if j != 7 %},{% endif %}
No newline at end of file
162 {% endfor %}
No newline at end of file
163 </div>
No newline at end of file
164 <label for="lblSign" class="lblSign">]</label>
No newline at end of file
165 </div>
No newline at end of file
166 {% if i == 7 %}
No newline at end of file
167 <label for="lblSignRight" class="lblSignRight">]</label>
No newline at end of file
168 {% else %}
No newline at end of file
169 <label for="lblSignRight" class="lblSignRight">,</label>
No newline at end of file
170 {% endif %}
No newline at end of file
171 </div>
No newline at end of file
172 <div class="cleardivs"></div>
No newline at end of file
173 {% endfor %}
No newline at end of file
174 </div>
No newline at end of file
175 </div>
No newline at end of file
176 <div class="NewDivTx">
No newline at end of file
177 <label for="lblTx" class="titleField">Tx</label>
No newline at end of file
178 <div class="boxTR" id="divtxtTR">
No newline at end of file
179 {% for i in range %}
No newline at end of file
180 <div class="fullLine">
No newline at end of file
181 {% if i == 0 %}
No newline at end of file
182 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
183 {% else %}
No newline at end of file
184 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
185 {% endif %}
No newline at end of file
186 <div class="lineInputsTx">
No newline at end of file
187 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
188 <div class="divValuesTx">
No newline at end of file
189 {% for j in range %}
No newline at end of file
190 <input type="text" name="txtUnitTxDown" class="txtUnitTx" id="txtUnitTxDown_{{ i }}_{{ j }}" value="1" maxlength="1" />
No newline at end of file
191 {% if j != 7 %},{% endif %}
No newline at end of file
192 {% endfor %}
No newline at end of file
193 </div>
No newline at end of file
194 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
195 </div>
No newline at end of file
196 {% if i == 7 %}
No newline at end of file
197 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
198 {% else %}
No newline at end of file
199 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
200 {% endif %}
No newline at end of file
201 </div>
No newline at end of file
202 <div class="cleardivs"></div>
No newline at end of file
203 {% endfor %}
No newline at end of file
204 </div>
No newline at end of file
205 <div class="cleardivs"></div>
No newline at end of file
206 </div>
No newline at end of file
207 <div class="NewDivTx">
No newline at end of file
208 <label for="lblRx" class="titleField">Rx</label>
No newline at end of file
209 <div class="boxTR" id="divtxtTR">
No newline at end of file
210 {% for i in range %}
No newline at end of file
211 <div class="fullLine">
No newline at end of file
212 {% if i == 0 %}
No newline at end of file
213 <label for="lblNewSignLeft" class="lblNewSignLeft">[</label>
No newline at end of file
214 {% else %}
No newline at end of file
215 <label for="lblNewSignLeft" class="lblNewSignLeft">&nbsp;</label>
No newline at end of file
216 {% endif %}
No newline at end of file
217 <div class="lineInputsTx">
No newline at end of file
218 <label for="lblSign" class="lblSignTx">[</label>
No newline at end of file
219 <div class="divValuesTx">
No newline at end of file
220 {% for j in range %}
No newline at end of file
221 <input type="text" name="txtUnitRxDown" class="txtUnitRx" id="txtUnitRxDown_{{ i }}_{{ j }}" value="0" />
No newline at end of file
222 {% if j != 7 %},{% endif %}
No newline at end of file
223 {% endfor %}
No newline at end of file
224 </div>
No newline at end of file
225 <label for="lblSign" class="lblSignTx">]</label>
No newline at end of file
226 </div>
No newline at end of file
227 {% if i == 7 %}
No newline at end of file
228 <label for="lblNewSignRight" class="lblNewSignRight">]</label>
No newline at end of file
229 {% else %}
No newline at end of file
230 <label for="lblNewSignRight" class="lblNewSignRight">,</label>
No newline at end of file
231 {% endif %}
No newline at end of file
232 </div>
No newline at end of file
233 <div class="cleardivs"></div>
No newline at end of file
234 {% endfor %}
No newline at end of file
235 </div>
No newline at end of file
236 <div class="cleardivs"></div>
No newline at end of file
237 </div>
No newline at end of file
238 <div class="cleardivs"></div>
No newline at end of file
239 <div class="divNewUes">
No newline at end of file
240 <label for="lblUes" class="titleUes">Ues:</label>
No newline at end of file
241 <div class="valueUes">
No newline at end of file
242 <label for="lblUes">[</label>
No newline at end of file
243 {% for element in arrayUes %}
No newline at end of file
244 <input type="text" name="unitUesDown_{{ forloop.counter }}" value="{{ element }}" maxlength="8" class="txtUnitUes" />
No newline at end of file
245 {% if not forloop.last %},{% endif %}
No newline at end of file
246 {% endfor %}
No newline at end of file
247 <label for="lblUes">]</label>
No newline at end of file
248 </div>
No newline at end of file
249 </div>
No newline at end of file
250 <div class="checkOnly">
No newline at end of file
251 <input type="checkbox" name="chkOnlyRxDown" value="" />
No newline at end of file
252 <label for="lblOnlyRx">Only Rx</label>
No newline at end of file
253 </div>
No newline at end of file
254 </fieldset>
No newline at end of file
255 <input type="hidden" name="txtAntennaDown" value="" />
No newline at end of file
256 <input type="hidden" name="txtTxDown" value="" />
No newline at end of file
257 <input type="hidden" name="txtRxDown" value="" />
No newline at end of file
258 <input type="hidden" name="txtUesDown" value="" />
No newline at end of file
259 </div>
No newline at end of file
260 </div>
No newline at end of file
261 <input type="hidden" name="mode" value="e">
No newline at end of file
262 </form>
No newline at end of file
263 </div>
No newline at end of file
264 {% endblock %} No newline at end of file
@@ -0,0 +1,8
1 <div class="overJRO" id="PictureOverJRODown">
No newline at end of file
2 {% if img_down %}<img src="/media/{{ img_down }}" />{% else %}<img />{% endif %}
No newline at end of file
3 {% if antennaDown.value != None and antennaDown.tx != None and antennaDown.rx != None and antennaDown.ues != None %}
No newline at end of file
4 <a href="#" class="activeOverJRO" id="Down">Preview</a>
No newline at end of file
5 {% else %}
No newline at end of file
6 <a href="#" class="link-disabled">Preview</a>
No newline at end of file
7 {% endif %}
No newline at end of file
8 </div> No newline at end of file
@@ -0,0 +1,8
1 <div class="overJRO" id="PictureOverJROUp">
No newline at end of file
2 {% if img_up %}<img src="/media/{{ img_up }}" />{% else %}<img />{% endif %}
No newline at end of file
3 {% if antennaUp.value != None and antennaUp.tx != None and antennaUp.rx != None and antennaUp.ues != None %}
No newline at end of file
4 <a href="#" class="activeOverJRO" id="Up">Preview</a>
No newline at end of file
5 {% else %}
No newline at end of file
6 <a href="#" class="link-disabled">Preview</a>
No newline at end of file
7 {% endif %}
No newline at end of file
8 </div> No newline at end of file
@@ -0,0 +1,10
1 {% extends "config/index.html" %}
No newline at end of file
2 {% block title %}ABS CONTROL:::::SENDING FILE{% endblock %}
No newline at end of file
3
No newline at end of file
4 {% block maincolumn %}
No newline at end of file
5 <div id="maincolumn">
No newline at end of file
6 <div class="divMessage">
No newline at end of file
7 <label>{{ message }}</label>
No newline at end of file
8 </div>
No newline at end of file
9 </div>
No newline at end of file
10 {% endblock %} No newline at end of file
@@ -0,0 +1,156
1 {% extends "config/index.html" %}
No newline at end of file
2 {% block title %}ABS CONTROL:::PROFILE:::{{ objProfile.name }}{% endblock %}
No newline at end of file
3
No newline at end of file
4 {% block mnu_profile %}
No newline at end of file
5 <nav class="MnuHorizontal" id="mnuProfiles">
No newline at end of file
6 <ul>
No newline at end of file
7 <li><a href="{% url abscontrol.views.new %}">New</a></li>
No newline at end of file
8 {% if patternChoosen %}
No newline at end of file
9 <li><a href="{% url abscontrol.views.editPattern objProfile.id patternChoosen.id %}">Edit</a></li>
No newline at end of file
10 {% else %}
No newline at end of file
11 <li><a href="{% url abscontrol.views.edit objProfile.id %}">Edit</a></li>
No newline at end of file
12 {% endif %}
No newline at end of file
13 <li><a href="#">Save as</a></li>
No newline at end of file
14 <li><a href="{% url abscontrol.views.importProfile %}">Import</a></li>
No newline at end of file
15 <li><a href="#" id="lnkExport" alt="{{ objProfile.id }}">Export</a></li>
No newline at end of file
16 <li><a href="#" id="lnkSendFile" alt="{{ objProfile.id }}">Send</a></li>
No newline at end of file
17 </ul>
No newline at end of file
18 </nav>
No newline at end of file
19 {% endblock %}
No newline at end of file
20 {% block maincolumn%}
No newline at end of file
21 {% block activeProfileBar %}
No newline at end of file
22 <div class="cleardivs"></div>
No newline at end of file
23 <div id="activeProfileBar">
No newline at end of file
24 <label for="lblProfileTitle" class="titleBar">Active Profile</label>
No newline at end of file
25 <img src="/media/navbarsep.png" class="navbarsep">
No newline at end of file
26 {% if profileActive != None %}
No newline at end of file
27 <a href="{% url abscontrol.views.view profileActive.id %}" class="lnkActiveProfile">{{ profileActive.name }}</a>
No newline at end of file
28 {% endif %}
No newline at end of file
29 {% if patternActive != None %}
No newline at end of file
30 <img src="/media/navbarsep.png" class="navbarsep">
No newline at end of file
31 <a href="{% url abscontrol.views.viewPattern profileActive.id patternActive.id %}" class="lnkActiveProfile">{{ patternActive.value }}</a>
No newline at end of file
32 {% endif %}
No newline at end of file
33 </div>
No newline at end of file
34 <div class="cleardivs"></div>
No newline at end of file
35 {% endblock %}
No newline at end of file
36 <div id="maincolumn">
No newline at end of file
37 {% if objProfile.state == 0 %}
No newline at end of file
38 <div id="divProfile">
No newline at end of file
39 <label for="lblName">Profile:</label>
No newline at end of file
40 <label for="lblProfile">{{ objProfile.name }}</label>
No newline at end of file
41 </div>
No newline at end of file
42 {% endif %}
No newline at end of file
43 {% if patternChoosen %}
No newline at end of file
44 <div id="navPatterns">
No newline at end of file
45 <nav class="" id="navPatternList">
No newline at end of file
46 <ul>
No newline at end of file
47 {% for element in lsPatterns %}
No newline at end of file
48 <li>
No newline at end of file
49 {% if patternChoosen.id == element.id %}
No newline at end of file
50 {% if element.is_active == 1 %}
No newline at end of file
51 <a href="{% url abscontrol.views.viewPattern objProfile.id element.id %}" class="lnkPatternSelected lnkPatternActive">{{ element.value }}</a>
No newline at end of file
52 {% else %}
No newline at end of file
53 <a href="{% url abscontrol.views.viewPattern objProfile.id element.id %}" class="lnkPatternSelected">{{ element.value }}</a>
No newline at end of file
54 {% endif %}
No newline at end of file
55 {% else %}
No newline at end of file
56 {% if element.is_active == 1 %}
No newline at end of file
57 <a href="{% url abscontrol.views.viewPattern objProfile.id element.id %}" class="lnkPattern lnkPatternActive">{{ element.value }}</a>
No newline at end of file
58 {% else %}
No newline at end of file
59 <a href="{% url abscontrol.views.viewPattern objProfile.id element.id %}" class="lnkPattern">{{ element.value }}</a>
No newline at end of file
60 {% endif %}
No newline at end of file
61 {% endif %}
No newline at end of file
62 </li>
No newline at end of file
63 {% endfor %}
No newline at end of file
64 </ul>
No newline at end of file
65 <div class="cleardivs"></div>
No newline at end of file
66 </nav>
No newline at end of file
67 </div>
No newline at end of file
68 {% endif %}
No newline at end of file
69 {% block mnuPattern %}
No newline at end of file
70 {% if objProfile.is_active == 1 %}
No newline at end of file
71 <div class="divMenu" id="divMnuPattern">
No newline at end of file
72 <nav class="MnuHorizontal">
No newline at end of file
73 <ul class="mnu" id="mnuPattern">
No newline at end of file
74 <li><a href="#" class="lnkChangePattern">Apply</a></li>
No newline at end of file
75 </ul>
No newline at end of file
76 </nav>
No newline at end of file
77 </div>
No newline at end of file
78 <div class="cleardivs"></div>
No newline at end of file
79 {% endif %}
No newline at end of file
80 {% endblock %}
No newline at end of file
81 <div id="divPattern">
No newline at end of file
82 <div id="infoPattern">
No newline at end of file
83 <div id="antennaUp" class="antenna" style="float: left">
No newline at end of file
84 <fieldset class="flsAntenna">
No newline at end of file
85 <legend class="legendAntenna">UP</legend>
No newline at end of file
86 <div class="infoAntenna">
No newline at end of file
87 <div class="divAntenna">
No newline at end of file
88 <label for="lblAntenna">Antenna</label>
No newline at end of file
89 <p class="view-textAntenna">{{ antennaUp.value }}</p>
No newline at end of file
90 </div>
No newline at end of file
91 <div class="divTx">
No newline at end of file
92 <label for="lblTx">Tx</label>
No newline at end of file
93 <p>{{ antennaUp.tx }}</p>
No newline at end of file
94 </div>
No newline at end of file
95 <div class="divTx">
No newline at end of file
96 <label for="lblRx">Rx</label>
No newline at end of file
97 <p>{{ antennaUp.rx }}</p>
No newline at end of file
98 </div>
No newline at end of file
99 <div class="cleardivs"></div>
No newline at end of file
100 <div class="divUes">
No newline at end of file
101 <label for="lblUes">Ues:</label>
No newline at end of file
102 <label for="lblAntennaUpUes">{{ antennaUp.ues }}</label>
No newline at end of file
103 {% if antennaUp.only_rx == 0 %}
No newline at end of file
104 <input type="checkbox" name="chkOnlyRxUp" value="" />
No newline at end of file
105 {% else %}
No newline at end of file
106 <input type="checkbox" name="chkOnlyRxUp" value="" checked="checked"/>
No newline at end of file
107 {% endif %}
No newline at end of file
108 <label for="lblOnlyRx">Only RX</label>
No newline at end of file
109 </div>
No newline at end of file
110 </div>
No newline at end of file
111 </fieldset>
No newline at end of file
112 </div>
No newline at end of file
113 {% include 'config/overjro_up.html' %}
No newline at end of file
114 <div class="cleardivs"></div>
No newline at end of file
115
No newline at end of file
116 <div id="antennaDown" class="antenna" style="float: left">
No newline at end of file
117 <fieldset class="flsAntenna">
No newline at end of file
118 <legend class="legendAntenna">DOWN</legend>
No newline at end of file
119 <div class="infoAntenna">
No newline at end of file
120 <div class="divAntenna">
No newline at end of file
121 <label for="lblAntenna">Antenna</label>
No newline at end of file
122 <p class="view-textAntenna">{{ antennaDown.value }}</p>
No newline at end of file
123 </div>
No newline at end of file
124 <div class="divTx">
No newline at end of file
125 <label for="lblTx">Tx</label>
No newline at end of file
126 <p>{{ antennaDown.tx }}</p>
No newline at end of file
127 </div>
No newline at end of file
128 <div class="divTx">
No newline at end of file
129 <label for="lblRx">Rx</label>
No newline at end of file
130 <p>{{ antennaDown.rx }}</p>
No newline at end of file
131 </div>
No newline at end of file
132 <div class="cleardivs"></div>
No newline at end of file
133 <div class="divUes">
No newline at end of file
134 <label for="lblUes">Ues:</label>
No newline at end of file
135 <label for="lblAntennaDownUes">{{ antennaDown.ues }}</label>
No newline at end of file
136 {% if antennaDown.only_rx == 0 %}
No newline at end of file
137 <input type="checkbox" name="chkOnlyRxDown" value="" />
No newline at end of file
138 {% else %}
No newline at end of file
139 <input type="checkbox" name="chkOnlyRxDown" value="" checked="checked"/>
No newline at end of file
140 {% endif %}
No newline at end of file
141 <label for="lblOnlyRx">Only RX</label>
No newline at end of file
142 </div>
No newline at end of file
143 </div>
No newline at end of file
144
No newline at end of file
145 </fieldset>
No newline at end of file
146 </div>
No newline at end of file
147 {% include 'config/overjro_down.html' %}
No newline at end of file
148 <div class="cleardivs"></div>
No newline at end of file
149 </div>
No newline at end of file
150 <input type="hidden" name="txtAntennaUpId" value="{{ antennaUp.id }}"/>
No newline at end of file
151 <input type="hidden" name="txtAntennaDownId" value="{{ antennaDown.id }}"/>
No newline at end of file
152 <input type="hidden" name="txtPatternId" value="{{ patternChoosen.id }}"/>
No newline at end of file
153 <input type="hidden" name="txtProfileId" value="{{ objProfile.id }}"/>
No newline at end of file
154 </div>
No newline at end of file
155 </div>
No newline at end of file
156 {% endblock %} No newline at end of file
@@ -0,0 +1,1
1 {% extends "config/view.html" %} No newline at end of file
@@ -1,165 +1,173
1 # Django settings for abs_webapp_dev project. No newline at end of file
1 # Django settings for abs_webapp_dev project.
2 No newline at end of file
2
3 import os, sys No newline at end of file
3 import os, sys
4 PROJECT_DIR = os.path.split(os.path.dirname(__file__))[0] No newline at end of file
4 PROJECT_DIR = os.path.split(os.path.dirname(__file__))[0]
5 API_DIR = "/home/dev/workspace/absclient" No newline at end of file
5 API_DIR = "/home/dev/workspace/absclient"
6 OVERJRO_DIR = "/home/dev/workspace/weboverjro" No newline at end of file
6 OVERJRO_DIR = "/home/dev/workspace/weboverjro"
7 sys.path.append(API_DIR) No newline at end of file
7 sys.path.append(API_DIR)
8 sys.path.append(OVERJRO_DIR) No newline at end of file
8 sys.path.append(OVERJRO_DIR)
9 No newline at end of file
9
10 DEBUG = True No newline at end of file
10 DEBUG = True
11 TEMPLATE_DEBUG = DEBUG No newline at end of file
11 TEMPLATE_DEBUG = DEBUG
12 No newline at end of file
12
13 ADMINS = ( No newline at end of file
13 ADMINS = (
14 # ('Your Name', 'your_email@example.com'), No newline at end of file
14 # ('Your Name', 'your_email@example.com'),
15 ) No newline at end of file
15 )
16 No newline at end of file
16
17 MANAGERS = ADMINS No newline at end of file
17 MANAGERS = ADMINS
18 No newline at end of file
18
19 DATABASES = { No newline at end of file
19 DATABASES = {
20 'default': { No newline at end of file
20 'default': {
21 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. No newline at end of file
21 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
22 'NAME': 'db_jrowebapp_dev', # Or path to database file if using sqlite3. No newline at end of file
22 'NAME': 'db_jrowebapp_dev', # Or path to database file if using sqlite3.
23 'USER': 'abscontrol', # Not used with sqlite3. No newline at end of file
23 'USER': 'abscontrol', # Not used with sqlite3.
24 'PASSWORD': 'abscontrol', # Not used with sqlite3. No newline at end of file
24 'PASSWORD': 'abscontrol', # Not used with sqlite3.
25 'HOST': 'localhost', # Set to empty string for localhost. Not used with sqlite3. No newline at end of file
25 'HOST': 'localhost', # Set to empty string for localhost. Not used with sqlite3.
26 'PORT': '3306', # Set to empty string for default. Not used with sqlite3. No newline at end of file
26 'PORT': '3306', # Set to empty string for default. Not used with sqlite3.
27 } No newline at end of file
27 }
28 } No newline at end of file
28 }
29 No newline at end of file
29
30 # Local time zone for this installation. Choices can be found here: No newline at end of file
30 # Local time zone for this installation. Choices can be found here:
31 # http://en.wikipedia.org/wiki/List_of_tz_zones_by_name No newline at end of file
31 # http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
32 # although not all choices may be available on all operating systems. No newline at end of file
32 # although not all choices may be available on all operating systems.
33 # In a Windows environment this must be set to your system time zone. No newline at end of file
33 # In a Windows environment this must be set to your system time zone.
34 TIME_ZONE = 'America/Lima' No newline at end of file
34 TIME_ZONE = 'America/Lima'
35 No newline at end of file
35
36 # Language code for this installation. All choices can be found here: No newline at end of file
36 # Language code for this installation. All choices can be found here:
37 # http://www.i18nguy.com/unicode/language-identifiers.html No newline at end of file
37 # http://www.i18nguy.com/unicode/language-identifiers.html
38 LANGUAGE_CODE = 'en-us' No newline at end of file
38 LANGUAGE_CODE = 'en-us'
39 No newline at end of file
39
40 SITE_ID = 1 No newline at end of file
40 SITE_ID = 1
41 No newline at end of file
41
42 # If you set this to False, Django will make some optimizations so as not No newline at end of file
42 # If you set this to False, Django will make some optimizations so as not
43 # to load the internationalization machinery. No newline at end of file
43 # to load the internationalization machinery.
44 USE_I18N = True No newline at end of file
44 USE_I18N = True
45 No newline at end of file
45
46 # If you set this to False, Django will not format dates, numbers and No newline at end of file
46 # If you set this to False, Django will not format dates, numbers and
47 # calendars according to the current locale. No newline at end of file
47 # calendars according to the current locale.
48 USE_L10N = True No newline at end of file
48 USE_L10N = True
49 No newline at end of file
49
50 # If you set this to False, Django will not use timezone-aware datetimes. No newline at end of file
50 # If you set this to False, Django will not use timezone-aware datetimes.
51 USE_TZ = True No newline at end of file
51 USE_TZ = True
52 No newline at end of file
52
53 # Absolute filesystem path to the directory that will hold user-uploaded files. No newline at end of file
53 # Absolute filesystem path to the directory that will hold user-uploaded files.
54 # Example: "/home/media/media.lawrence.com/media/" No newline at end of file
54 # Example: "/home/media/media.lawrence.com/media/"
55 MEDIA_ROOT = os.path.join(PROJECT_DIR, 'media').replace('\\', '/') No newline at end of file
55 MEDIA_ROOT = os.path.join(PROJECT_DIR, 'media').replace('\\', '/')
56 No newline at end of file
56
57 # URL that handles the media served from MEDIA_ROOT. Make sure to use a No newline at end of file
57 # URL that handles the media served from MEDIA_ROOT. Make sure to use a
58 # trailing slash. No newline at end of file
58 # trailing slash.
59 # Examples: "http://media.lawrence.com/media/", "http://example.com/media/" No newline at end of file
59 # Examples: "http://media.lawrence.com/media/", "http://example.com/media/"
60 MEDIA_URL = '/media/' No newline at end of file
60 MEDIA_URL = '/media/'
61 No newline at end of file
61
62 # Absolute path to the directory static files should be collected to. No newline at end of file
62 # Absolute path to the directory static files should be collected to.
63 # Don't put anything in this directory yourself; store your static files No newline at end of file
63 # Don't put anything in this directory yourself; store your static files
64 # in apps' "static/" subdirectories and in STATICFILES_DIRS. No newline at end of file
64 # in apps' "static/" subdirectories and in STATICFILES_DIRS.
65 # Example: "/home/media/media.lawrence.com/static/"
65 # Example: "/home/media/media.lawrence.com/static/"
No newline at end of file
66 STATIC_ROOT = os.path.join(PROJECT_DIR, 'static').replace('\\', '/')
66 #STATIC_ROOT = os.path.join(PROJECT_DIR, 'static-serve').replace('\\', '/'),
No newline at end of file
No newline at end of file
67 #STATIC_ROOT = '' No newline at end of file
67 STATIC_ROOT = '' No newline at end of file
68 No newline at end of file
68
69 # URL prefix for static files. No newline at end of file
69 # URL prefix for static files.
70 # Example: "http://media.lawrence.com/static/" No newline at end of file
70 # Example: "http://media.lawrence.com/static/"
71 STATIC_URL = '/static/' No newline at end of file
71 STATIC_URL = '/static/'
72 No newline at end of file
72
73 # Additional locations of static files No newline at end of file
73 # Additional locations of static files
74 STATICFILES_DIRS = ( No newline at end of file
74 STATICFILES_DIRS = (
75 # Put strings here, like "/home/html/static" or "C:/www/django/static". No newline at end of file
75 # Put strings here, like "/home/html/static" or "C:/www/django/static".
76 # Always use forward slashes, even on Windows. No newline at end of file
76 # Always use forward slashes, even on Windows.
77 # Don't forget to use absolute paths, not relative paths. No newline at end of file
77 # Don't forget to use absolute paths, not relative paths.
78 #os.path.join(PROJECT_DIR, "static").replace('\\', '/'),
78 #os.path.join(PROJECT_DIR, "static").replace('\\', '/'),
No newline at end of file
79 #("static", os.path.join(PROJECT_DIR, "static").replace('\\', '/')), No newline at end of file
79 ("static", os.path.join(PROJECT_DIR, "static").replace('\\', '/')), No newline at end of file
80 ) No newline at end of file
80 )
81 No newline at end of file
81
82 # List of finder classes that know how to find static files in No newline at end of file
82 # List of finder classes that know how to find static files in
83 # various locations. No newline at end of file
83 # various locations.
84 STATICFILES_FINDERS = ( No newline at end of file
84 STATICFILES_FINDERS = (
85 'django.contrib.staticfiles.finders.FileSystemFinder', No newline at end of file
85 'django.contrib.staticfiles.finders.FileSystemFinder',
86 'django.contrib.staticfiles.finders.AppDirectoriesFinder',
86 'django.contrib.staticfiles.finders.AppDirectoriesFinder',
No newline at end of file
87 'django.contrib.staticfiles.finders.DefaultStorageFinder', No newline at end of file
87 # 'django.contrib.staticfiles.finders.DefaultStorageFinder', No newline at end of file
88 ) No newline at end of file
88 )
89 No newline at end of file
89
90 # Make this unique, and don't share it with anybody. No newline at end of file
90 # Make this unique, and don't share it with anybody.
91 SECRET_KEY = '=^abu)gd=)7hf#rme_vw=tv!bdh7+tts*^&amp;)h(n=7@7(9#__@e' No newline at end of file
91 SECRET_KEY = '=^abu)gd=)7hf#rme_vw=tv!bdh7+tts*^&amp;)h(n=7@7(9#__@e'
92 No newline at end of file
92
93 # List of callables that know how to import templates from various sources. No newline at end of file
93 # List of callables that know how to import templates from various sources.
94 TEMPLATE_LOADERS = ( No newline at end of file
94 TEMPLATE_LOADERS = (
95 'django.template.loaders.filesystem.Loader', No newline at end of file
95 'django.template.loaders.filesystem.Loader',
96 'django.template.loaders.app_directories.Loader', No newline at end of file
96 'django.template.loaders.app_directories.Loader',
97 # 'django.template.loaders.eggs.Loader', No newline at end of file
97 # 'django.template.loaders.eggs.Loader',
98 ) No newline at end of file
98 )
99 No newline at end of file
99
100 MIDDLEWARE_CLASSES = ( No newline at end of file
100 MIDDLEWARE_CLASSES = (
101 'django.middleware.common.CommonMiddleware', No newline at end of file
101 'django.middleware.common.CommonMiddleware',
102 'django.contrib.sessions.middleware.SessionMiddleware', No newline at end of file
102 'django.contrib.sessions.middleware.SessionMiddleware',
103 'django.middleware.csrf.CsrfViewMiddleware', No newline at end of file
103 'django.middleware.csrf.CsrfViewMiddleware',
104 'django.contrib.auth.middleware.AuthenticationMiddleware', No newline at end of file
104 'django.contrib.auth.middleware.AuthenticationMiddleware',
105 'django.contrib.messages.middleware.MessageMiddleware', No newline at end of file
105 'django.contrib.messages.middleware.MessageMiddleware',
106 # Uncomment the next line for simple clickjacking protection: No newline at end of file
106 # Uncomment the next line for simple clickjacking protection:
107 # 'django.middleware.clickjacking.XFrameOptionsMiddleware', No newline at end of file
107 # 'django.middleware.clickjacking.XFrameOptionsMiddleware',
108 ) No newline at end of file
108 )
109 No newline at end of file
109
110 ROOT_URLCONF = 'abs_webapp_dev.urls' No newline at end of file
110 ROOT_URLCONF = 'abs_webapp_dev.urls'
111 No newline at end of file
111
112 # Python dotted path to the WSGI application used by Django's runserver. No newline at end of file
112 # Python dotted path to the WSGI application used by Django's runserver.
113 WSGI_APPLICATION = 'abs_webapp_dev.wsgi.application' No newline at end of file
113 WSGI_APPLICATION = 'abs_webapp_dev.wsgi.application'
114 No newline at end of file
114
115 TEMPLATE_DIRS = ( No newline at end of file
115 TEMPLATE_DIRS = (
116 # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". No newline at end of file
116 # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
117 # Always use forward slashes, even on Windows. No newline at end of file
117 # Always use forward slashes, even on Windows.
118 # Don't forget to use absolute paths, not relative paths. No newline at end of file
118 # Don't forget to use absolute paths, not relative paths.
119 os.path.join(PROJECT_DIR, "templates").replace('\\', '/'), No newline at end of file
119 os.path.join(PROJECT_DIR, "templates").replace('\\', '/'),
120 os.path.join(PROJECT_DIR, "abscontrol", "templates").replace('\\', '/'),
No newline at end of file
121 )
No newline at end of file
122
No newline at end of file
123 TEMPLATE_CONTEXT_PROCESSORS = (
No newline at end of file
124 'django.core.context_processors.debug',
No newline at end of file
125 'django.core.context_processors.media',
No newline at end of file
126 'django.core.context_processors.static',
No newline at end of file
127 'django.contrib.auth.context_processors.auth', No newline at end of file
120 ) No newline at end of file
128 )
121 No newline at end of file
129
122 INSTALLED_APPS = ( No newline at end of file
130 INSTALLED_APPS = (
123 'django.contrib.auth', No newline at end of file
131 'django.contrib.auth',
124 'django.contrib.contenttypes', No newline at end of file
132 'django.contrib.contenttypes',
125 'django.contrib.sessions', No newline at end of file
133 'django.contrib.sessions',
126 'django.contrib.sites', No newline at end of file
134 'django.contrib.sites',
127 'django.contrib.messages', No newline at end of file
135 'django.contrib.messages',
128 'django.contrib.staticfiles', No newline at end of file
136 'django.contrib.staticfiles',
129 # Uncomment the next line to enable the admin: No newline at end of file
137 # Uncomment the next line to enable the admin:
130 'django.contrib.admin', No newline at end of file
138 'django.contrib.admin',
131 # Uncomment the next line to enable admin documentation: No newline at end of file
139 # Uncomment the next line to enable admin documentation:
132 # 'django.contrib.admindocs', No newline at end of file
140 # 'django.contrib.admindocs',
133 'abscontrol', No newline at end of file
141 'abscontrol',
134 'audit', No newline at end of file
142 'audit',
135 'south', No newline at end of file
143 'south',
136 ) No newline at end of file
144 )
137 No newline at end of file
145
138 # A sample logging configuration. The only tangible logging No newline at end of file
146 # A sample logging configuration. The only tangible logging
139 # performed by this configuration is to send an email to No newline at end of file
147 # performed by this configuration is to send an email to
140 # the site admins on every HTTP 500 error when DEBUG=False. No newline at end of file
148 # the site admins on every HTTP 500 error when DEBUG=False.
141 # See http://docs.djangoproject.com/en/dev/topics/logging for No newline at end of file
149 # See http://docs.djangoproject.com/en/dev/topics/logging for
142 # more details on how to customize your logging configuration. No newline at end of file
150 # more details on how to customize your logging configuration.
143 LOGGING = { No newline at end of file
151 LOGGING = {
144 'version': 1, No newline at end of file
152 'version': 1,
145 'disable_existing_loggers': False, No newline at end of file
153 'disable_existing_loggers': False,
146 'filters': { No newline at end of file
154 'filters': {
147 'require_debug_false': { No newline at end of file
155 'require_debug_false': {
148 '()': 'django.utils.log.RequireDebugFalse' No newline at end of file
156 '()': 'django.utils.log.RequireDebugFalse'
149 } No newline at end of file
157 }
150 }, No newline at end of file
158 },
151 'handlers': { No newline at end of file
159 'handlers': {
152 'mail_admins': { No newline at end of file
160 'mail_admins': {
153 'level': 'ERROR', No newline at end of file
161 'level': 'ERROR',
154 'filters': ['require_debug_false'], No newline at end of file
162 'filters': ['require_debug_false'],
155 'class': 'django.utils.log.AdminEmailHandler' No newline at end of file
163 'class': 'django.utils.log.AdminEmailHandler'
156 } No newline at end of file
164 }
157 }, No newline at end of file
165 },
158 'loggers': { No newline at end of file
166 'loggers': {
159 'django.request': { No newline at end of file
167 'django.request': {
160 'handlers': ['mail_admins'], No newline at end of file
168 'handlers': ['mail_admins'],
161 'level': 'ERROR', No newline at end of file
169 'level': 'ERROR',
162 'propagate': True, No newline at end of file
170 'propagate': True,
163 }, No newline at end of file
171 },
164 } No newline at end of file
172 }
165 } No newline at end of file
173 }
@@ -1,564 +1,564
1 from django.shortcuts import render_to_response, redirect No newline at end of file
1 from django.shortcuts import render_to_response, redirect
2 from django.http import HttpResponse No newline at end of file
2 from django.http import HttpResponse
3 from django.conf import settings No newline at end of file
3 from django.conf import settings
4 from django.utils.encoding import smart_str No newline at end of file
4 from django.utils.encoding import smart_str
5 from django.core.servers.basehttp import FileWrapper No newline at end of file
5 from django.core.servers.basehttp import FileWrapper
6 import mimetypes No newline at end of file
6 import mimetypes
7 from django.contrib.auth.decorators import login_required No newline at end of file
7 from django.contrib.auth.decorators import login_required
8 from django.template import RequestContext No newline at end of file
8 from django.template import RequestContext
9 No newline at end of file
9
10 from datetime import datetime No newline at end of file
10 from datetime import datetime
11 import os No newline at end of file
11 import os
12 from abscontrol.models import Profile, Pattern, AntennaDown, AntennaUp No newline at end of file
12 from abscontrol.models import Profile, Pattern, AntennaDown, AntennaUp
13 No newline at end of file
13
14 from util.readABSFile import readABSFile No newline at end of file
14 from util.readABSFile import readABSFile
15 from util.saveABSFile import saveABSFile No newline at end of file
15 from util.saveABSFile import saveABSFile
16 from util.ABSData import ABSData No newline at end of file
16 from util.ABSData import ABSData
17 from util.OverJRO import OverJRO No newline at end of file
17 from util.OverJRO import OverJRO
18 from scripts.sendFile import sendFile No newline at end of file
18 from scripts.sendFile import sendFile
19 from scripts.changeBeam import changeBeam No newline at end of file
19 from scripts.changeBeam import changeBeam
20 from overJroShow import overJroShow No newline at end of file
20 from overJroShow import overJroShow
21 No newline at end of file
21
22 arrayTx = [["0","0","0","0","0","0","0","0"],\ No newline at end of file
22 arrayTx = [["0","0","0","0","0","0","0","0"],\
23 ["0","0","0","0","0","0","0","0"],\ No newline at end of file
23 ["0","0","0","0","0","0","0","0"],\
24 ["0","0","0","0","0","0","0","0"],\ No newline at end of file
24 ["0","0","0","0","0","0","0","0"],\
25 ["0","0","0","0","0","0","0","0"],\ No newline at end of file
25 ["0","0","0","0","0","0","0","0"],\
26 ["0","0","0","0","0","0","0","0"],\ No newline at end of file
26 ["0","0","0","0","0","0","0","0"],\
27 ["0","0","0","0","0","0","0","0"],\ No newline at end of file
27 ["0","0","0","0","0","0","0","0"],\
28 ["0","0","0","0","0","0","0","0"],\ No newline at end of file
28 ["0","0","0","0","0","0","0","0"],\
29 ["0","0","0","0","0","0","0","0"]] No newline at end of file
29 ["0","0","0","0","0","0","0","0"]]
30 No newline at end of file
30
31 arrayUes = ["0.533333","0.00000","1.06667","0.00000"] No newline at end of file
31 arrayUes = ["0.533333","0.00000","1.06667","0.00000"]
32 No newline at end of file
32
33 @login_required(login_url='/accounts/login/') No newline at end of file
33 @login_required(login_url='/accounts/login/')
34 def index(request): No newline at end of file
34 def index(request):
35 #latest_poll_list = profileAntenna.objects.all().order_by('-pub_date')[:5] No newline at end of file
35 #latest_poll_list = profileAntenna.objects.all().order_by('-pub_date')[:5]
36 profile_list = Profile.objects.filter(state=1)
36 profile_list = Profile.objects.filter(state=1)
No newline at end of file
37 return render_to_response('config/index.html', {'profile_list': profile_list}, context_instance=RequestContext(request)) No newline at end of file
37 return render_to_response('abscontrol/index.html', {'profile_list': profile_list}, context_instance=RequestContext(request)) No newline at end of file
38 No newline at end of file
38
39 def new(request): No newline at end of file
39 def new(request):
40 profile_list = Profile.objects.filter(state=1) No newline at end of file
40 profile_list = Profile.objects.filter(state=1)
41 txtProfile = datetime.now().strftime("%Y%m%d%H%M%S%f") No newline at end of file
41 txtProfile = datetime.now().strftime("%Y%m%d%H%M%S%f")
42 newprofile = Profile(name=txtProfile) No newline at end of file
42 newprofile = Profile(name=txtProfile)
43 newprofile.save() No newline at end of file
43 newprofile.save()
44 No newline at end of file
44
45 lsPatterns = None No newline at end of file
45 lsPatterns = None
46
46
No newline at end of file
47 return render_to_response('config/new.html', {'profile_list': profile_list, No newline at end of file
47 return render_to_response('abscontrol/new.html', {'profile_list': profile_list, No newline at end of file
48 'profile_name' : newprofile.name, No newline at end of file
48 'profile_name' : newprofile.name,
49 'profile_id' : newprofile.id, No newline at end of file
49 'profile_id' : newprofile.id,
50 'lsPatterns' : lsPatterns, No newline at end of file
50 'lsPatterns' : lsPatterns,
51 'range' : range(8), 'arrayUes' : arrayUes, No newline at end of file
51 'range' : range(8), 'arrayUes' : arrayUes,
52 }, context_instance=RequestContext(request)) No newline at end of file
52 }, context_instance=RequestContext(request))
53 No newline at end of file
53
54 def save(request): No newline at end of file
54 def save(request):
55 No newline at end of file
55
56 txtProfile = request.POST["txtProfile"] No newline at end of file
56 txtProfile = request.POST["txtProfile"]
57 No newline at end of file
57
58 txtAntennaUp = request.POST["txtAntennaUp"] No newline at end of file
58 txtAntennaUp = request.POST["txtAntennaUp"]
59 txtTxUp = request.POST["txtTxUp"] No newline at end of file
59 txtTxUp = request.POST["txtTxUp"]
60 txtRxUp = request.POST["txtRxUp"] No newline at end of file
60 txtRxUp = request.POST["txtRxUp"]
61 txtUesUp = request.POST["txtUesUp"] No newline at end of file
61 txtUesUp = request.POST["txtUesUp"]
62 No newline at end of file
62
63 txtAntennaDown = request.POST["txtAntennaDown"] No newline at end of file
63 txtAntennaDown = request.POST["txtAntennaDown"]
64 txtTxDown = request.POST["txtTxDown"] No newline at end of file
64 txtTxDown = request.POST["txtTxDown"]
65 txtRxDown = request.POST["txtRxDown"] No newline at end of file
65 txtRxDown = request.POST["txtRxDown"]
66 txtUesDown = request.POST["txtUesDown"] No newline at end of file
66 txtUesDown = request.POST["txtUesDown"]
67 No newline at end of file
67
68 newprofile = Profile(name=txtProfile) No newline at end of file
68 newprofile = Profile(name=txtProfile)
69 newprofile.save() No newline at end of file
69 newprofile.save()
70 No newline at end of file
70
71 newpattern = newprofile.pattern_set.create(value=1) No newline at end of file
71 newpattern = newprofile.pattern_set.create(value=1)
72 newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp) No newline at end of file
72 newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp)
73 newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown) No newline at end of file
73 newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown)
74 No newline at end of file
74
75 newurl = '/abscontrol/view/%d' % newprofile.id No newline at end of file
75 newurl = '/abscontrol/view/%d' % newprofile.id
76 No newline at end of file
76
77 return redirect(newurl) No newline at end of file
77 return redirect(newurl)
78 No newline at end of file
78
79 # Update temporal experiment No newline at end of file
79 # Update temporal experiment
80 def upgrade(request, profile_id): No newline at end of file
80 def upgrade(request, profile_id):
81 txtAntennaUp = request.POST["txtAntennaUp"] No newline at end of file
81 txtAntennaUp = request.POST["txtAntennaUp"]
82 txtTxUp = request.POST["txtTxUp"] No newline at end of file
82 txtTxUp = request.POST["txtTxUp"]
83 txtRxUp = request.POST["txtRxUp"] No newline at end of file
83 txtRxUp = request.POST["txtRxUp"]
84 txtUesUp = request.POST["txtUesUp"] No newline at end of file
84 txtUesUp = request.POST["txtUesUp"]
85 No newline at end of file
85
86 txtAntennaDown = request.POST["txtAntennaDown"] No newline at end of file
86 txtAntennaDown = request.POST["txtAntennaDown"]
87 txtTxDown = request.POST["txtTxDown"] No newline at end of file
87 txtTxDown = request.POST["txtTxDown"]
88 txtRxDown = request.POST["txtRxDown"] No newline at end of file
88 txtRxDown = request.POST["txtRxDown"]
89 txtUesDown = request.POST["txtUesDown"] No newline at end of file
89 txtUesDown = request.POST["txtUesDown"]
90 No newline at end of file
90
91 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
91 objProfile = Profile.objects.get(pk=profile_id)
92 newpattern = objProfile.pattern_set.create(value=1) No newline at end of file
92 newpattern = objProfile.pattern_set.create(value=1)
93 newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp) No newline at end of file
93 newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp)
94 newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown) No newline at end of file
94 newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown)
95 No newline at end of file
95
96 newurl = '/abscontrol/%d/edit/%d' % (int(profile_id), newpattern.id) No newline at end of file
96 newurl = '/abscontrol/%d/edit/%d' % (int(profile_id), newpattern.id)
97 return redirect(newurl) No newline at end of file
97 return redirect(newurl)
98 No newline at end of file
98
99 def update(request, profile_id): No newline at end of file
99 def update(request, profile_id):
100 txtProfile = request.POST["txtProfile"] No newline at end of file
100 txtProfile = request.POST["txtProfile"]
101 No newline at end of file
101
102 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
102 objProfile = Profile.objects.get(pk=profile_id)
103 objProfile.name = txtProfile No newline at end of file
103 objProfile.name = txtProfile
104 objProfile.state = 1 No newline at end of file
104 objProfile.state = 1
105 objProfile.save() No newline at end of file
105 objProfile.save()
106 No newline at end of file
106
107 newurl = '/abscontrol/view/%d' % objProfile.id No newline at end of file
107 newurl = '/abscontrol/view/%d' % objProfile.id
108 return redirect(newurl) No newline at end of file
108 return redirect(newurl)
109 No newline at end of file
109
110 def changeName(request, profile_id): No newline at end of file
110 def changeName(request, profile_id):
111 profile_list = Profile.objects.filter(state=1) No newline at end of file
111 profile_list = Profile.objects.filter(state=1)
112 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
112 objProfile = Profile.objects.get(pk=profile_id)
113 lsPatterns = objProfile.pattern_set.all() No newline at end of file
113 lsPatterns = objProfile.pattern_set.all()
114
114
No newline at end of file
115 return render_to_response('config/changeName.html', {'profile_list': profile_list, No newline at end of file
115 return render_to_response('abscontrol/changeName.html', {'profile_list': profile_list, No newline at end of file
116 'objProfile': objProfile, No newline at end of file
116 'objProfile': objProfile,
117 'lsPatterns' : lsPatterns, No newline at end of file
117 'lsPatterns' : lsPatterns,
118 }, context_instance=RequestContext(request)) No newline at end of file
118 }, context_instance=RequestContext(request))
119 No newline at end of file
119
120 def view(request, profile_id): No newline at end of file
120 def view(request, profile_id):
121 objProfileActive = None No newline at end of file
121 objProfileActive = None
122 objPatternActive = None No newline at end of file
122 objPatternActive = None
123 No newline at end of file
123
124 if request.method == 'GET' and 'pattern' in request.GET: No newline at end of file
124 if request.method == 'GET' and 'pattern' in request.GET:
125 pattern_value = request.GET["pattern"] No newline at end of file
125 pattern_value = request.GET["pattern"]
126 else: No newline at end of file
126 else:
127 pattern_value = 1 No newline at end of file
127 pattern_value = 1
128 No newline at end of file
128
129 profile_list = Profile.objects.filter(state=1) No newline at end of file
129 profile_list = Profile.objects.filter(state=1)
130 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
130 objProfile = Profile.objects.get(pk=profile_id)
131 No newline at end of file
131
132 lsPatterns = objProfile.pattern_set.all() No newline at end of file
132 lsPatterns = objProfile.pattern_set.all()
133 patternChoosen = objProfile.pattern_set.get(value=pattern_value) No newline at end of file
133 patternChoosen = objProfile.pattern_set.get(value=pattern_value)
134 objAntennaUp = patternChoosen.antennaup_set.get() No newline at end of file
134 objAntennaUp = patternChoosen.antennaup_set.get()
135 objAntennaDown = patternChoosen.antennadown_set.get() No newline at end of file
135 objAntennaDown = patternChoosen.antennadown_set.get()
136 No newline at end of file
136
137 lsProfilesActive = Profile.objects.filter(is_active=1) No newline at end of file
137 lsProfilesActive = Profile.objects.filter(is_active=1)
138 if len(lsProfilesActive) > 0: No newline at end of file
138 if len(lsProfilesActive) > 0:
139 objProfileActive = Profile.objects.get(is_active=1) No newline at end of file
139 objProfileActive = Profile.objects.get(is_active=1)
140 No newline at end of file
140
141 lsPatternsActive = Pattern.objects.filter(is_active=1) No newline at end of file
141 lsPatternsActive = Pattern.objects.filter(is_active=1)
142 if len(lsPatternsActive) > 0: No newline at end of file
142 if len(lsPatternsActive) > 0:
143 objPatternActive = Pattern.objects.get(is_active=1) No newline at end of file
143 objPatternActive = Pattern.objects.get(is_active=1)
144
144
No newline at end of file
145 return render_to_response('config/view.html', {'objProfile': objProfile, 'profile_list': profile_list, No newline at end of file
145 return render_to_response('abscontrol/view.html', {'objProfile': objProfile, 'profile_list': profile_list, No newline at end of file
146 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, No newline at end of file
146 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
147 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, No newline at end of file
147 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
148 'profileActive' : objProfileActive, 'patternActive' : objPatternActive, No newline at end of file
148 'profileActive' : objProfileActive, 'patternActive' : objPatternActive,
149 }, context_instance=RequestContext(request)) No newline at end of file
149 }, context_instance=RequestContext(request))
150 No newline at end of file
150
151 def edit(request, profile_id): No newline at end of file
151 def edit(request, profile_id):
152 if request.method == 'GET' and 'pattern' in request.GET: No newline at end of file
152 if request.method == 'GET' and 'pattern' in request.GET:
153 pattern_value = request.GET["pattern"] No newline at end of file
153 pattern_value = request.GET["pattern"]
154 else: No newline at end of file
154 else:
155 pattern_value = 1 No newline at end of file
155 pattern_value = 1
156 No newline at end of file
156
157 absData = ABSData() No newline at end of file
157 absData = ABSData()
158 profile_list = Profile.objects.filter(state=1) No newline at end of file
158 profile_list = Profile.objects.filter(state=1)
159 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
159 objProfile = Profile.objects.get(pk=profile_id)
160 No newline at end of file
160
161 lsPatterns = objProfile.pattern_set.all() No newline at end of file
161 lsPatterns = objProfile.pattern_set.all()
162 patternChoosen = objProfile.pattern_set.get(value=pattern_value) No newline at end of file
162 patternChoosen = objProfile.pattern_set.get(value=pattern_value)
163 objAntennaUp = patternChoosen.antennaup_set.get() No newline at end of file
163 objAntennaUp = patternChoosen.antennaup_set.get()
164 objAntennaDown = patternChoosen.antennadown_set.get() No newline at end of file
164 objAntennaDown = patternChoosen.antennadown_set.get()
165 No newline at end of file
165
166 arrayAntennaUp = absData.convertStringtoList2(objAntennaUp.value) No newline at end of file
166 arrayAntennaUp = absData.convertStringtoList2(objAntennaUp.value)
167 if objAntennaUp.tx != None: No newline at end of file
167 if objAntennaUp.tx != None:
168 arrayTxUp = absData.convertStringtoList2(objAntennaUp.tx) No newline at end of file
168 arrayTxUp = absData.convertStringtoList2(objAntennaUp.tx)
169 else: No newline at end of file
169 else:
170 arrayTxUp = arrayTx No newline at end of file
170 arrayTxUp = arrayTx
171 if objAntennaUp.rx != None: No newline at end of file
171 if objAntennaUp.rx != None:
172 arrayRxUp = absData.convertStringtoList2(objAntennaUp.rx) No newline at end of file
172 arrayRxUp = absData.convertStringtoList2(objAntennaUp.rx)
173 else: No newline at end of file
173 else:
174 arrayRxUp = arrayTx No newline at end of file
174 arrayRxUp = arrayTx
175 if objAntennaUp.ues != None: No newline at end of file
175 if objAntennaUp.ues != None:
176 arrayUesUp = absData.convertStringtoList1(objAntennaUp.ues) No newline at end of file
176 arrayUesUp = absData.convertStringtoList1(objAntennaUp.ues)
177 else: No newline at end of file
177 else:
178 arrayUesUp = arrayUes No newline at end of file
178 arrayUesUp = arrayUes
179 No newline at end of file
179
180 arrayAntennaDown = absData.convertStringtoList2(objAntennaDown.value) No newline at end of file
180 arrayAntennaDown = absData.convertStringtoList2(objAntennaDown.value)
181 if objAntennaDown.tx != None: No newline at end of file
181 if objAntennaDown.tx != None:
182 arrayTxDown = absData.convertStringtoList2(objAntennaDown.tx) No newline at end of file
182 arrayTxDown = absData.convertStringtoList2(objAntennaDown.tx)
183 else: No newline at end of file
183 else:
184 arrayTxDown = arrayTx No newline at end of file
184 arrayTxDown = arrayTx
185 if objAntennaDown.rx != None: No newline at end of file
185 if objAntennaDown.rx != None:
186 arrayRxDown = absData.convertStringtoList2(objAntennaDown.rx) No newline at end of file
186 arrayRxDown = absData.convertStringtoList2(objAntennaDown.rx)
187 else: No newline at end of file
187 else:
188 arrayRxDown = arrayTx No newline at end of file
188 arrayRxDown = arrayTx
189 if objAntennaDown.ues != None: No newline at end of file
189 if objAntennaDown.ues != None:
190 arrayUesDown = absData.convertStringtoList1(objAntennaDown.ues) No newline at end of file
190 arrayUesDown = absData.convertStringtoList1(objAntennaDown.ues)
191 else: No newline at end of file
191 else:
192 arrayUesDown = arrayUes No newline at end of file
192 arrayUesDown = arrayUes
193
193
No newline at end of file
194 return render_to_response('config/edit.html', {'objProfile': objProfile, 'profile_list': profile_list, No newline at end of file
194 return render_to_response('abscontrol/edit.html', {'objProfile': objProfile, 'profile_list': profile_list, No newline at end of file
195 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, No newline at end of file
195 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
196 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, No newline at end of file
196 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
197 'arrayAntennaUp' : arrayAntennaUp, 'arrayTxUp' : arrayTxUp, No newline at end of file
197 'arrayAntennaUp' : arrayAntennaUp, 'arrayTxUp' : arrayTxUp,
198 'arrayRxUp' : arrayRxUp, 'arrayRxDown' : arrayRxDown, No newline at end of file
198 'arrayRxUp' : arrayRxUp, 'arrayRxDown' : arrayRxDown,
199 'arrayAntennaDown' : arrayAntennaDown, 'arrayTxDown' : arrayTxDown, No newline at end of file
199 'arrayAntennaDown' : arrayAntennaDown, 'arrayTxDown' : arrayTxDown,
200 'arrayUesUp' : arrayUesUp, 'arrayUesDown' : arrayUesDown, No newline at end of file
200 'arrayUesUp' : arrayUesUp, 'arrayUesDown' : arrayUesDown,
201 }, context_instance=RequestContext(request)) No newline at end of file
201 }, context_instance=RequestContext(request))
202 No newline at end of file
202
203 def addPattern(request, profile_id): No newline at end of file
203 def addPattern(request, profile_id):
204 profile_list = Profile.objects.filter(state=1) No newline at end of file
204 profile_list = Profile.objects.filter(state=1)
205 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
205 objProfile = Profile.objects.get(pk=profile_id)
206
206
No newline at end of file
207 return render_to_response('config/addPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, No newline at end of file
207 return render_to_response('abscontrol/addPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, No newline at end of file
208 'range' : range(8), 'arrayUes' : arrayUes, No newline at end of file
208 'range' : range(8), 'arrayUes' : arrayUes,
209 }, context_instance=RequestContext(request)) No newline at end of file
209 }, context_instance=RequestContext(request))
210 No newline at end of file
210
211 def editPattern(request, profile_id, pattern_id): No newline at end of file
211 def editPattern(request, profile_id, pattern_id):
212 absData = ABSData() No newline at end of file
212 absData = ABSData()
213 profile_list = Profile.objects.filter(state=1) No newline at end of file
213 profile_list = Profile.objects.filter(state=1)
214 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
214 objProfile = Profile.objects.get(pk=profile_id)
215 lsPatterns = objProfile.pattern_set.all() No newline at end of file
215 lsPatterns = objProfile.pattern_set.all()
216 patternChoosen = Pattern.objects.get(pk=pattern_id) No newline at end of file
216 patternChoosen = Pattern.objects.get(pk=pattern_id)
217 objAntennaUp = patternChoosen.antennaup_set.get() No newline at end of file
217 objAntennaUp = patternChoosen.antennaup_set.get()
218 objAntennaDown = patternChoosen.antennadown_set.get() No newline at end of file
218 objAntennaDown = patternChoosen.antennadown_set.get()
219 No newline at end of file
219
220 arrayAntennaUp = absData.convertStringtoList2(objAntennaUp.value) No newline at end of file
220 arrayAntennaUp = absData.convertStringtoList2(objAntennaUp.value)
221 if objAntennaUp.tx != None: No newline at end of file
221 if objAntennaUp.tx != None:
222 arrayTxUp = absData.convertStringtoList2(objAntennaUp.tx) No newline at end of file
222 arrayTxUp = absData.convertStringtoList2(objAntennaUp.tx)
223 else: No newline at end of file
223 else:
224 arrayTxUp = arrayTx No newline at end of file
224 arrayTxUp = arrayTx
225 if objAntennaUp.rx != None: No newline at end of file
225 if objAntennaUp.rx != None:
226 arrayRxUp = absData.convertStringtoList2(objAntennaUp.rx) No newline at end of file
226 arrayRxUp = absData.convertStringtoList2(objAntennaUp.rx)
227 else: No newline at end of file
227 else:
228 arrayRxUp = arrayTx No newline at end of file
228 arrayRxUp = arrayTx
229 if objAntennaUp.ues != None: No newline at end of file
229 if objAntennaUp.ues != None:
230 arrayUesUp = absData.convertStringtoList1(objAntennaUp.ues) No newline at end of file
230 arrayUesUp = absData.convertStringtoList1(objAntennaUp.ues)
231 else: No newline at end of file
231 else:
232 arrayUesUp = arrayUes No newline at end of file
232 arrayUesUp = arrayUes
233 No newline at end of file
233
234 arrayAntennaDown = absData.convertStringtoList2(objAntennaDown.value) No newline at end of file
234 arrayAntennaDown = absData.convertStringtoList2(objAntennaDown.value)
235 if objAntennaDown.tx != None: No newline at end of file
235 if objAntennaDown.tx != None:
236 arrayTxDown = absData.convertStringtoList2(objAntennaDown.tx) No newline at end of file
236 arrayTxDown = absData.convertStringtoList2(objAntennaDown.tx)
237 else: No newline at end of file
237 else:
238 arrayTxDown = arrayTx No newline at end of file
238 arrayTxDown = arrayTx
239 if objAntennaDown.rx != None: No newline at end of file
239 if objAntennaDown.rx != None:
240 arrayRxDown = absData.convertStringtoList2(objAntennaDown.rx) No newline at end of file
240 arrayRxDown = absData.convertStringtoList2(objAntennaDown.rx)
241 else: No newline at end of file
241 else:
242 arrayRxDown = arrayTx No newline at end of file
242 arrayRxDown = arrayTx
243 if objAntennaDown.ues != None: No newline at end of file
243 if objAntennaDown.ues != None:
244 arrayUesDown = absData.convertStringtoList1(objAntennaDown.ues) No newline at end of file
244 arrayUesDown = absData.convertStringtoList1(objAntennaDown.ues)
245 else: No newline at end of file
245 else:
246 arrayUesDown = arrayUes No newline at end of file
246 arrayUesDown = arrayUes
247
247
No newline at end of file
248 return render_to_response('config/editPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, No newline at end of file
248 return render_to_response('abscontrol/editPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, No newline at end of file
249 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, No newline at end of file
249 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
250 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, No newline at end of file
250 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
251 'arrayAntennaUp' : arrayAntennaUp, 'arrayTxUp' : arrayTxUp, No newline at end of file
251 'arrayAntennaUp' : arrayAntennaUp, 'arrayTxUp' : arrayTxUp,
252 'arrayRxUp' : arrayRxUp, 'arrayRxDown' : arrayRxDown, No newline at end of file
252 'arrayRxUp' : arrayRxUp, 'arrayRxDown' : arrayRxDown,
253 'arrayAntennaDown' : arrayAntennaDown, 'arrayTxDown' : arrayTxDown, No newline at end of file
253 'arrayAntennaDown' : arrayAntennaDown, 'arrayTxDown' : arrayTxDown,
254 'arrayUesUp' : arrayUesUp, 'arrayUesDown' : arrayUesDown, No newline at end of file
254 'arrayUesUp' : arrayUesUp, 'arrayUesDown' : arrayUesDown,
255 }, context_instance=RequestContext(request)) No newline at end of file
255 }, context_instance=RequestContext(request))
256 No newline at end of file
256
257 def savePattern(request, profile_id): No newline at end of file
257 def savePattern(request, profile_id):
258 pattern_id = 0 No newline at end of file
258 pattern_id = 0
259 method = "save" No newline at end of file
259 method = "save"
260 No newline at end of file
260
261 if 'pattern_id' in request.POST: No newline at end of file
261 if 'pattern_id' in request.POST:
262 pattern_id = request.POST["pattern_id"] No newline at end of file
262 pattern_id = request.POST["pattern_id"]
263 method = "update" No newline at end of file
263 method = "update"
264 No newline at end of file
264
265 maxValuePattern = 0 No newline at end of file
265 maxValuePattern = 0
266 txtAntennaUp = request.POST["txtAntennaUp"] No newline at end of file
266 txtAntennaUp = request.POST["txtAntennaUp"]
267 txtTxUp = request.POST["txtTxUp"] No newline at end of file
267 txtTxUp = request.POST["txtTxUp"]
268 txtRxUp = request.POST["txtRxUp"] No newline at end of file
268 txtRxUp = request.POST["txtRxUp"]
269 txtUesUp = request.POST["txtUesUp"] No newline at end of file
269 txtUesUp = request.POST["txtUesUp"]
270 if "chkOnlyRxUp" in request.POST: No newline at end of file
270 if "chkOnlyRxUp" in request.POST:
271 chkOnlyRxUp = request.POST["chkOnlyRxUp"] No newline at end of file
271 chkOnlyRxUp = request.POST["chkOnlyRxUp"]
272 else: No newline at end of file
272 else:
273 chkOnlyRxUp = 0 No newline at end of file
273 chkOnlyRxUp = 0
274 No newline at end of file
274
275 txtAntennaDown = request.POST["txtAntennaDown"] No newline at end of file
275 txtAntennaDown = request.POST["txtAntennaDown"]
276 txtTxDown = request.POST["txtTxDown"] No newline at end of file
276 txtTxDown = request.POST["txtTxDown"]
277 txtRxDown = request.POST["txtRxDown"] No newline at end of file
277 txtRxDown = request.POST["txtRxDown"]
278 txtUesDown = request.POST["txtUesDown"] No newline at end of file
278 txtUesDown = request.POST["txtUesDown"]
279 if "chkOnlyRxDown" in request.POST: No newline at end of file
279 if "chkOnlyRxDown" in request.POST:
280 chkOnlyRxDown = request.POST["chkOnlyRxDown"] No newline at end of file
280 chkOnlyRxDown = request.POST["chkOnlyRxDown"]
281 else: No newline at end of file
281 else:
282 chkOnlyRxDown = 0 No newline at end of file
282 chkOnlyRxDown = 0
283 No newline at end of file
283
284 mode = request.POST["mode"] No newline at end of file
284 mode = request.POST["mode"]
285 No newline at end of file
285
286 if method == "save": No newline at end of file
286 if method == "save":
287 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
287 objProfile = Profile.objects.get(pk=profile_id)
288 lsPatterns = objProfile.pattern_set.all() No newline at end of file
288 lsPatterns = objProfile.pattern_set.all()
289 if len(lsPatterns) > 0: No newline at end of file
289 if len(lsPatterns) > 0:
290 for element in lsPatterns: No newline at end of file
290 for element in lsPatterns:
291 if element.value > maxValuePattern: No newline at end of file
291 if element.value > maxValuePattern:
292 maxPattern = element.value No newline at end of file
292 maxPattern = element.value
293 else: No newline at end of file
293 else:
294 maxPattern = 0 No newline at end of file
294 maxPattern = 0
295 No newline at end of file
295
296 if maxPattern < 10 : No newline at end of file
296 if maxPattern < 10 :
297 newValuePattern = maxPattern + 1 No newline at end of file
297 newValuePattern = maxPattern + 1
298 newpattern = objProfile.pattern_set.create(value=newValuePattern) No newline at end of file
298 newpattern = objProfile.pattern_set.create(value=newValuePattern)
299 newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp,only_rx=chkOnlyRxUp) No newline at end of file
299 newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp,only_rx=chkOnlyRxUp)
300 newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown,only_rx=chkOnlyRxDown) No newline at end of file
300 newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown,only_rx=chkOnlyRxDown)
301 error = 0 No newline at end of file
301 error = 0
302 else: No newline at end of file
302 else:
303 error = 1 # Can not add more patterns No newline at end of file
303 error = 1 # Can not add more patterns
304 No newline at end of file
304
305 if mode == "e": No newline at end of file
305 if mode == "e":
306 newurl = '/abscontrol/%d/edit/%d' % (int(profile_id), newpattern.id) No newline at end of file
306 newurl = '/abscontrol/%d/edit/%d' % (int(profile_id), newpattern.id)
307 else: No newline at end of file
307 else:
308 newurl = '/abscontrol/%d/view/%d' % (int(profile_id), newpattern.id) No newline at end of file
308 newurl = '/abscontrol/%d/view/%d' % (int(profile_id), newpattern.id)
309 else: No newline at end of file
309 else:
310 txtAntennaUpId = request.POST["txtAntennaUpId"] No newline at end of file
310 txtAntennaUpId = request.POST["txtAntennaUpId"]
311 objAntennaUp = AntennaUp.objects.get(pk=txtAntennaUpId) No newline at end of file
311 objAntennaUp = AntennaUp.objects.get(pk=txtAntennaUpId)
312 objAntennaUp.value = txtAntennaUp No newline at end of file
312 objAntennaUp.value = txtAntennaUp
313 objAntennaUp.tx = txtTxUp No newline at end of file
313 objAntennaUp.tx = txtTxUp
314 objAntennaUp.rx = txtRxUp No newline at end of file
314 objAntennaUp.rx = txtRxUp
315 objAntennaUp.ues = txtUesUp No newline at end of file
315 objAntennaUp.ues = txtUesUp
316 objAntennaUp.only_rx = chkOnlyRxUp No newline at end of file
316 objAntennaUp.only_rx = chkOnlyRxUp
317 objAntennaUp.save() No newline at end of file
317 objAntennaUp.save()
318 No newline at end of file
318
319 txtAntennaDownId = request.POST["txtAntennaDownId"] No newline at end of file
319 txtAntennaDownId = request.POST["txtAntennaDownId"]
320 objAntennaDown = AntennaDown.objects.get(pk=txtAntennaDownId) No newline at end of file
320 objAntennaDown = AntennaDown.objects.get(pk=txtAntennaDownId)
321 objAntennaDown.value = txtAntennaDown No newline at end of file
321 objAntennaDown.value = txtAntennaDown
322 objAntennaDown.tx = txtTxDown No newline at end of file
322 objAntennaDown.tx = txtTxDown
323 objAntennaDown.rx = txtRxDown No newline at end of file
323 objAntennaDown.rx = txtRxDown
324 objAntennaDown.ues = txtUesDown No newline at end of file
324 objAntennaDown.ues = txtUesDown
325 objAntennaDown.only_rx = chkOnlyRxDown No newline at end of file
325 objAntennaDown.only_rx = chkOnlyRxDown
326 objAntennaDown.save() No newline at end of file
326 objAntennaDown.save()
327 No newline at end of file
327
328 if mode == "e": No newline at end of file
328 if mode == "e":
329 newurl = '/abscontrol/%d/edit/%d' % (int(profile_id), int(pattern_id)) No newline at end of file
329 newurl = '/abscontrol/%d/edit/%d' % (int(profile_id), int(pattern_id))
330 else: No newline at end of file
330 else:
331 newurl = '/abscontrol/%d/view/%d' % (int(profile_id), int(pattern_id)) No newline at end of file
331 newurl = '/abscontrol/%d/view/%d' % (int(profile_id), int(pattern_id))
332 No newline at end of file
332
333 return redirect(newurl) No newline at end of file
333 return redirect(newurl)
334 No newline at end of file
334
335 def viewPattern(request, profile_id, pattern_id): No newline at end of file
335 def viewPattern(request, profile_id, pattern_id):
336 objProfileActive = None No newline at end of file
336 objProfileActive = None
337 objPatternActive = None No newline at end of file
337 objPatternActive = None
338 No newline at end of file
338
339 profile_list = Profile.objects.filter(state=1) No newline at end of file
339 profile_list = Profile.objects.filter(state=1)
340 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
340 objProfile = Profile.objects.get(pk=profile_id)
341 No newline at end of file
341
342 patternChoosen = Pattern.objects.get(pk=pattern_id) No newline at end of file
342 patternChoosen = Pattern.objects.get(pk=pattern_id)
343 No newline at end of file
343
344 objAntennaUp = patternChoosen.antennaup_set.get() No newline at end of file
344 objAntennaUp = patternChoosen.antennaup_set.get()
345 objAntennaDown = patternChoosen.antennadown_set.get() No newline at end of file
345 objAntennaDown = patternChoosen.antennadown_set.get()
346 No newline at end of file
346
347 lsPatterns = objProfile.pattern_set.all() No newline at end of file
347 lsPatterns = objProfile.pattern_set.all()
348 No newline at end of file
348
349 lsProfilesActive = Profile.objects.filter(is_active=1) No newline at end of file
349 lsProfilesActive = Profile.objects.filter(is_active=1)
350 if len(lsProfilesActive) > 0: No newline at end of file
350 if len(lsProfilesActive) > 0:
351 objProfileActive = Profile.objects.get(is_active=1) No newline at end of file
351 objProfileActive = Profile.objects.get(is_active=1)
352 No newline at end of file
352
353 lsPatternsActive = Pattern.objects.filter(is_active=1) No newline at end of file
353 lsPatternsActive = Pattern.objects.filter(is_active=1)
354 if len(lsPatternsActive) > 0: No newline at end of file
354 if len(lsPatternsActive) > 0:
355 objPatternActive = Pattern.objects.get(is_active=1) No newline at end of file
355 objPatternActive = Pattern.objects.get(is_active=1)
356
356
No newline at end of file
357 return render_to_response('config/viewPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, No newline at end of file
357 return render_to_response('abscontrol/viewPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, No newline at end of file
358 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, No newline at end of file
358 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
359 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, No newline at end of file
359 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
360 'profileActive' : objProfileActive, 'patternActive' : objPatternActive, No newline at end of file
360 'profileActive' : objProfileActive, 'patternActive' : objPatternActive,
361 }, context_instance=RequestContext(request)) No newline at end of file
361 }, context_instance=RequestContext(request))
362 No newline at end of file
362
363 def deletePattern(request, profile_id, pattern_id): No newline at end of file
363 def deletePattern(request, profile_id, pattern_id):
364 newurl = '/abscontrol/edit/%d' % int(profile_id) No newline at end of file
364 newurl = '/abscontrol/edit/%d' % int(profile_id)
365 No newline at end of file
365
366 return redirect(newurl) No newline at end of file
366 return redirect(newurl)
367 No newline at end of file
367
368 def importProfile(request): No newline at end of file
368 def importProfile(request):
369 profile_list = Profile.objects.filter(state=1)
369 profile_list = Profile.objects.filter(state=1)
No newline at end of file
370 return render_to_response('config/import.html', {'profile_list': profile_list,}, context_instance=RequestContext(request)) No newline at end of file
370 return render_to_response('abscontrol/import.html', {'profile_list': profile_list,}, context_instance=RequestContext(request)) No newline at end of file
371 No newline at end of file
371
372 def upload(request): No newline at end of file
372 def upload(request):
373 profile_list = Profile.objects.filter(state=1) No newline at end of file
373 profile_list = Profile.objects.filter(state=1)
374 if request.method == 'POST': No newline at end of file
374 if request.method == 'POST':
375 txtFilename = request.FILES['txtFile'] No newline at end of file
375 txtFilename = request.FILES['txtFile']
376 if txtFilename: No newline at end of file
376 if txtFilename:
377 destination = open('/tmp/'+txtFilename.name, 'wb+') No newline at end of file
377 destination = open('/tmp/'+txtFilename.name, 'wb+')
378 for chunk in txtFilename.chunks(): No newline at end of file
378 for chunk in txtFilename.chunks():
379 destination.write(chunk) No newline at end of file
379 destination.write(chunk)
380 destination.close() No newline at end of file
380 destination.close()
381 filename = '/tmp/'+txtFilename.name No newline at end of file
381 filename = '/tmp/'+txtFilename.name
382 readFile = readABSFile(filename) No newline at end of file
382 readFile = readABSFile(filename)
383 expName, num_patterns, patterns = readFile.getMetadata() No newline at end of file
383 expName, num_patterns, patterns = readFile.getMetadata()
384 No newline at end of file
384
385 if expName != "" and num_patterns > 0: No newline at end of file
385 if expName != "" and num_patterns > 0:
386 if len(Profile.objects.filter(name__iexact=expName)) > 0: No newline at end of file
386 if len(Profile.objects.filter(name__iexact=expName)) > 0:
387 txtError = "Experiment's name found."
387 txtError = "Experiment's name found."
No newline at end of file
388 return render_to_response('config/error.html', {'profile_list': profile_list, No newline at end of file
388 return render_to_response('abscontrol/error.html', {'profile_list': profile_list, No newline at end of file
389 'txtError' : txtError, }, No newline at end of file
389 'txtError' : txtError, },
390 context_instance=RequestContext(request)) No newline at end of file
390 context_instance=RequestContext(request))
391 else: No newline at end of file
391 else:
392 newprofile = Profile(name=expName) No newline at end of file
392 newprofile = Profile(name=expName)
393 newprofile.save() No newline at end of file
393 newprofile.save()
394 newprofile.state = 1 No newline at end of file
394 newprofile.state = 1
395 No newline at end of file
395
396 for element in patterns: No newline at end of file
396 for element in patterns:
397 newpattern = newprofile.pattern_set.create(value=element["number"]) No newline at end of file
397 newpattern = newprofile.pattern_set.create(value=element["number"])
398 newpattern.antennaup_set.create(value=element["up"]) No newline at end of file
398 newpattern.antennaup_set.create(value=element["up"])
399 newpattern.antennadown_set.create(value=element["down"]) No newline at end of file
399 newpattern.antennadown_set.create(value=element["down"])
400 No newline at end of file
400
401 newprofile.save() No newline at end of file
401 newprofile.save()
402 No newline at end of file
402
403 newurl = '/abscontrol/edit/%d' % int(newprofile.id) No newline at end of file
403 newurl = '/abscontrol/edit/%d' % int(newprofile.id)
404 return redirect(newurl) No newline at end of file
404 return redirect(newurl)
405 else: No newline at end of file
405 else:
406 txtError = "Experiment's name not found or the number of patterns is 0."
406 txtError = "Experiment's name not found or the number of patterns is 0."
No newline at end of file
407 return render_to_response('config/error.html', {'profile_list': profile_list, No newline at end of file
407 return render_to_response('abscontrol/error.html', {'profile_list': profile_list, No newline at end of file
408 'txtError' : txtError, }, No newline at end of file
408 'txtError' : txtError, },
409 context_instance=RequestContext(request)) No newline at end of file
409 context_instance=RequestContext(request))
410 else: No newline at end of file
410 else:
411 txtError = "No file." No newline at end of file
411 txtError = "No file."
412
412
No newline at end of file
413 return render_to_response('config/error.html', {'profile_list': profile_list, 'txtError' : txtError, }, No newline at end of file
413 return render_to_response('abscontrol/error.html', {'profile_list': profile_list, 'txtError' : txtError, }, No newline at end of file
414 context_instance=RequestContext(request)) No newline at end of file
414 context_instance=RequestContext(request))
415 No newline at end of file
415
416 def getImgfromOverJRO(profile_id, objAntenna): No newline at end of file
416 def getImgfromOverJRO(profile_id, objAntenna):
417 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
417 objProfile = Profile.objects.get(pk=profile_id)
418 exp_name = objProfile.name No newline at end of file
418 exp_name = objProfile.name
419 phase_tx = objAntenna.value No newline at end of file
419 phase_tx = objAntenna.value
420 gain_tx = objAntenna.tx No newline at end of file
420 gain_tx = objAntenna.tx
421 gain_rx = objAntenna.rx No newline at end of file
421 gain_rx = objAntenna.rx
422 ues_tx = objAntenna.ues No newline at end of file
422 ues_tx = objAntenna.ues
423 just_rx = objAntenna.only_rx No newline at end of file
423 just_rx = objAntenna.only_rx
424 No newline at end of file
424
425 overjro = OverJRO() No newline at end of file
425 overjro = OverJRO()
426 overjro.setParameters(settings.MEDIA_ROOT, exp_name, phase_tx, gain_tx, gain_rx, ues_tx, just_rx) No newline at end of file
426 overjro.setParameters(settings.MEDIA_ROOT, exp_name, phase_tx, gain_tx, gain_rx, ues_tx, just_rx)
427 contentFile = overjro.setTextContent() No newline at end of file
427 contentFile = overjro.setTextContent()
428 finalpath = overjro.saveFile(contentFile) No newline at end of file
428 finalpath = overjro.saveFile(contentFile)
429 No newline at end of file
429
430 currentdate = datetime.today() No newline at end of file
430 currentdate = datetime.today()
431 newOverJro = overJroShow() No newline at end of file
431 newOverJro = overJroShow()
432 newOverJro.setInputParameters(settings.MEDIA_ROOT, currentdate, finalpath) No newline at end of file
432 newOverJro.setInputParameters(settings.MEDIA_ROOT, currentdate, finalpath)
433 newOverJro.setupParameters() No newline at end of file
433 newOverJro.setupParameters()
434 newOverJro.execute() No newline at end of file
434 newOverJro.execute()
435 path = newOverJro.getPlot() No newline at end of file
435 path = newOverJro.getPlot()
436 No newline at end of file
436
437 return path No newline at end of file
437 return path
438 No newline at end of file
438
439 def overJROUp(request, profile_id, pattern_id, antenna_id): No newline at end of file
439 def overJROUp(request, profile_id, pattern_id, antenna_id):
440 objAntenna = AntennaUp.objects.get(pk=antenna_id) No newline at end of file
440 objAntenna = AntennaUp.objects.get(pk=antenna_id)
441 img_path = getImgfromOverJRO(profile_id, objAntenna) No newline at end of file
441 img_path = getImgfromOverJRO(profile_id, objAntenna)
442 filename = os.path.split(img_path)[1]
442 filename = os.path.split(img_path)[1]
No newline at end of file
443 return render_to_response('config/overjro_up.html', {'img_up': filename,'antennaUp': objAntenna,}, No newline at end of file
443 return render_to_response('abscontrol/overjro_up.html', {'img_up': filename,'antennaUp': objAntenna,}, No newline at end of file
444 context_instance=RequestContext(request)) No newline at end of file
444 context_instance=RequestContext(request))
445 No newline at end of file
445
446 def overJRODown(request, profile_id, pattern_id, antenna_id): No newline at end of file
446 def overJRODown(request, profile_id, pattern_id, antenna_id):
447 objAntenna = AntennaDown.objects.get(pk=antenna_id) No newline at end of file
447 objAntenna = AntennaDown.objects.get(pk=antenna_id)
448 img_path = getImgfromOverJRO(profile_id, objAntenna) No newline at end of file
448 img_path = getImgfromOverJRO(profile_id, objAntenna)
449 filename = os.path.split(img_path)[1]
449 filename = os.path.split(img_path)[1]
No newline at end of file
450 return render_to_response('config/overjro_down.html', {'img_down': filename, 'antennaDown': objAntenna,}, No newline at end of file
450 return render_to_response('abscontrol/overjro_down.html', {'img_down': filename, 'antennaDown': objAntenna,}, No newline at end of file
451 context_instance=RequestContext(request)) No newline at end of file
451 context_instance=RequestContext(request))
452 No newline at end of file
452
453 def export(request, profile_id): No newline at end of file
453 def export(request, profile_id):
454 listPatterns = [] No newline at end of file
454 listPatterns = []
455 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
455 objProfile = Profile.objects.get(pk=profile_id)
456 exp_name = objProfile.name No newline at end of file
456 exp_name = objProfile.name
457 lsPatterns = objProfile.pattern_set.all() No newline at end of file
457 lsPatterns = objProfile.pattern_set.all()
458 for element in lsPatterns: No newline at end of file
458 for element in lsPatterns:
459 objAntennaUp = element.antennaup_set.get() No newline at end of file
459 objAntennaUp = element.antennaup_set.get()
460 objAntennaDown = element.antennadown_set.get() No newline at end of file
460 objAntennaDown = element.antennadown_set.get()
461 dicPatterns = {"number" : element.value, "up" : objAntennaUp.value, "down" : objAntennaDown.value} No newline at end of file
461 dicPatterns = {"number" : element.value, "up" : objAntennaUp.value, "down" : objAntennaDown.value}
462 listPatterns.append(dicPatterns) No newline at end of file
462 listPatterns.append(dicPatterns)
463 No newline at end of file
463
464 absFile = saveABSFile() No newline at end of file
464 absFile = saveABSFile()
465 absFile.setParameters(settings.MEDIA_ROOT, exp_name, listPatterns) No newline at end of file
465 absFile.setParameters(settings.MEDIA_ROOT, exp_name, listPatterns)
466 filename, filesize = absFile.save() No newline at end of file
466 filename, filesize = absFile.save()
467 No newline at end of file
467
468 wrapper = FileWrapper( open( filename, "r" ) ) No newline at end of file
468 wrapper = FileWrapper( open( filename, "r" ) )
469 content_type = mimetypes.guess_type( filename )[0] No newline at end of file
469 content_type = mimetypes.guess_type( filename )[0]
470 No newline at end of file
470
471 response = HttpResponse(wrapper, content_type = content_type) No newline at end of file
471 response = HttpResponse(wrapper, content_type = content_type)
472 response['Content-Description'] = 'File Transfer' No newline at end of file
472 response['Content-Description'] = 'File Transfer'
473 response['Content-Disposition'] = 'attachment; filename=%s' % smart_str(filename) No newline at end of file
473 response['Content-Disposition'] = 'attachment; filename=%s' % smart_str(filename)
474 response['Content-Transfer-Encoding'] = 'binary' No newline at end of file
474 response['Content-Transfer-Encoding'] = 'binary'
475 response['Expires'] = '0' No newline at end of file
475 response['Expires'] = '0'
476 response['Cache-Control'] = 'must-revalidate' No newline at end of file
476 response['Cache-Control'] = 'must-revalidate'
477 response['Pragma'] = 'public' No newline at end of file
477 response['Pragma'] = 'public'
478 response['Content-Length'] = '%s' % str(filesize) No newline at end of file
478 response['Content-Length'] = '%s' % str(filesize)
479 response['X-Sendfile'] = '%s' % smart_str(filename) No newline at end of file
479 response['X-Sendfile'] = '%s' % smart_str(filename)
480 No newline at end of file
480
481 return response No newline at end of file
481 return response
482 No newline at end of file
482
483 def send(request, profile_id): No newline at end of file
483 def send(request, profile_id):
484 listPatterns = [] No newline at end of file
484 listPatterns = []
485 objProfile = Profile.objects.get(pk=profile_id) No newline at end of file
485 objProfile = Profile.objects.get(pk=profile_id)
486 exp_name = objProfile.name No newline at end of file
486 exp_name = objProfile.name
487 No newline at end of file
487
488 lsPatterns = objProfile.pattern_set.all() No newline at end of file
488 lsPatterns = objProfile.pattern_set.all()
489 for element in lsPatterns: No newline at end of file
489 for element in lsPatterns:
490 objAntennaUp = element.antennaup_set.get() No newline at end of file
490 objAntennaUp = element.antennaup_set.get()
491 objAntennaDown = element.antennadown_set.get() No newline at end of file
491 objAntennaDown = element.antennadown_set.get()
492 dicPatterns = {"number" : element.value, "up" : objAntennaUp.value, "down" : objAntennaDown.value} No newline at end of file
492 dicPatterns = {"number" : element.value, "up" : objAntennaUp.value, "down" : objAntennaDown.value}
493 listPatterns.append(dicPatterns) No newline at end of file
493 listPatterns.append(dicPatterns)
494 No newline at end of file
494
495 absFile = saveABSFile() No newline at end of file
495 absFile = saveABSFile()
496 absFile.setParameters(settings.MEDIA_ROOT, exp_name, listPatterns) No newline at end of file
496 absFile.setParameters(settings.MEDIA_ROOT, exp_name, listPatterns)
497 filename, filesize = absFile.save() No newline at end of file
497 filename, filesize = absFile.save()
498 No newline at end of file
498
499 apiclient = sendFile() No newline at end of file
499 apiclient = sendFile()
500 apiclient.execute(filename) No newline at end of file
500 apiclient.execute(filename)
501 output = apiclient.getOutput() No newline at end of file
501 output = apiclient.getOutput()
502 No newline at end of file
502
503 if output == "OK": No newline at end of file
503 if output == "OK":
504 message = "File sent successfully." No newline at end of file
504 message = "File sent successfully."
505 lsProfilesActive = Profile.objects.filter(is_active=1) No newline at end of file
505 lsProfilesActive = Profile.objects.filter(is_active=1)
506 if len(lsProfilesActive) > 0: No newline at end of file
506 if len(lsProfilesActive) > 0:
507 objProfileActive = Profile.objects.get(is_active=1) No newline at end of file
507 objProfileActive = Profile.objects.get(is_active=1)
508 objProfileActive.is_active = 0 No newline at end of file
508 objProfileActive.is_active = 0
509 objProfileActive.save() No newline at end of file
509 objProfileActive.save()
510 No newline at end of file
510
511 lsPatternsActive = Pattern.objects.filter(is_active=1) No newline at end of file
511 lsPatternsActive = Pattern.objects.filter(is_active=1)
512 if len(lsPatternsActive) > 0: No newline at end of file
512 if len(lsPatternsActive) > 0:
513 objPatternActive = Pattern.objects.get(is_active=1) No newline at end of file
513 objPatternActive = Pattern.objects.get(is_active=1)
514 objPatternActive.is_active = 0 No newline at end of file
514 objPatternActive.is_active = 0
515 objPatternActive.save() No newline at end of file
515 objPatternActive.save()
516 No newline at end of file
516
517 objProfile.hits += 1 No newline at end of file
517 objProfile.hits += 1
518 objProfile.is_active = 1 No newline at end of file
518 objProfile.is_active = 1
519 objProfile.save() No newline at end of file
519 objProfile.save()
520 No newline at end of file
520
521 pattern_value = 1 No newline at end of file
521 pattern_value = 1
522 patternChoosen = objProfile.pattern_set.get(value=pattern_value) No newline at end of file
522 patternChoosen = objProfile.pattern_set.get(value=pattern_value)
523 patternChoosen.is_active = 1 No newline at end of file
523 patternChoosen.is_active = 1
524 patternChoosen.save() No newline at end of file
524 patternChoosen.save()
525 No newline at end of file
525
526 newurl = '/abscontrol/view/%d' % int(profile_id) No newline at end of file
526 newurl = '/abscontrol/view/%d' % int(profile_id)
527 No newline at end of file
527
528 return redirect(newurl) No newline at end of file
528 return redirect(newurl)
529 else: No newline at end of file
529 else:
530 message = "Error sending file." No newline at end of file
530 message = "Error sending file."
531 No newline at end of file
531
532 profile_list = Profile.objects.all() No newline at end of file
532 profile_list = Profile.objects.all()
533
533
No newline at end of file
534 return render_to_response('config/sendFile.html', {'message': message, "profile_list" : profile_list, No newline at end of file
534 return render_to_response('abscontrol/sendFile.html', {'message': message, "profile_list" : profile_list, No newline at end of file
535 'objProfile': objProfile, No newline at end of file
535 'objProfile': objProfile,
536 }, context_instance=RequestContext(request)) No newline at end of file
536 }, context_instance=RequestContext(request))
537 No newline at end of file
537
538 def changePattern(request, profile_id, pattern_id): No newline at end of file
538 def changePattern(request, profile_id, pattern_id):
539 patternChoosen = Pattern.objects.get(id=pattern_id) No newline at end of file
539 patternChoosen = Pattern.objects.get(id=pattern_id)
540 beam = int(patternChoosen.value)-1 No newline at end of file
540 beam = int(patternChoosen.value)-1
541 No newline at end of file
541
542 apiclient = changeBeam() No newline at end of file
542 apiclient = changeBeam()
543 apiclient.execute(str(beam)) No newline at end of file
543 apiclient.execute(str(beam))
544 output = apiclient.getOutput() No newline at end of file
544 output = apiclient.getOutput()
545 No newline at end of file
545
546 if output == "OK": No newline at end of file
546 if output == "OK":
547 lsPatternsActive = Pattern.objects.filter(is_active=1) No newline at end of file
547 lsPatternsActive = Pattern.objects.filter(is_active=1)
548 if len(lsPatternsActive) > 0: No newline at end of file
548 if len(lsPatternsActive) > 0:
549 objPatternActive = Pattern.objects.get(is_active=1) No newline at end of file
549 objPatternActive = Pattern.objects.get(is_active=1)
550 objPatternActive.is_active = 0 No newline at end of file
550 objPatternActive.is_active = 0
551 objPatternActive.save() No newline at end of file
551 objPatternActive.save()
552 No newline at end of file
552
553 patternChoosen.hits += 1 No newline at end of file
553 patternChoosen.hits += 1
554 patternChoosen.is_active = 1 No newline at end of file
554 patternChoosen.is_active = 1
555 patternChoosen.save() No newline at end of file
555 patternChoosen.save()
556 No newline at end of file
556
557 newurl = '/abscontrol/%d/view/%d/' % (int(profile_id), int(pattern_id)) No newline at end of file
557 newurl = '/abscontrol/%d/view/%d/' % (int(profile_id), int(pattern_id))
558 return redirect(newurl) No newline at end of file
558 return redirect(newurl)
559 else: No newline at end of file
559 else:
560 message = "Error sending file." No newline at end of file
560 message = "Error sending file."
561 profile_list = Profile.objects.all()
561 profile_list = Profile.objects.all()
No newline at end of file
562 return render_to_response('config/sendFile.html', {'message': message, "profile_list" : profile_list,
562 return render_to_response('abscontrol/sendFile.html', {'message': message, "profile_list" : profile_list,
No newline at end of file
No newline at end of file
563 }, context_instance=RequestContext(request))
563 }, context_instance=RequestContext(request))
No newline at end of file
No newline at end of file
564 No newline at end of file
564 No newline at end of file
@@ -1,45 +1,44
1 {% load static %} No newline at end of file
2 <!DOCTYPE html> No newline at end of file
1 <!DOCTYPE html>
3 <html lang="en"> No newline at end of file
2 <html lang="en">
4 <head> No newline at end of file
3 <head>
5 <meta charset="utf-8" /> No newline at end of file
4 <meta charset="utf-8" />
6 {% comment %} No newline at end of file
5 {% comment %}
7 <!-- Always force latest IE rendering engine (even in intranet) & Chrome Frame No newline at end of file
6 <!-- Always force latest IE rendering engine (even in intranet) & Chrome Frame
8 Remove this if you use the .htaccess --> No newline at end of file
7 Remove this if you use the .htaccess -->
9 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> No newline at end of file
8 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
10 {% endcomment %} No newline at end of file
9 {% endcomment %}
11 <link href='http://fonts.googleapis.com/css?family=Droid+Sans|Ubuntu:400,500,300italic|Open+Sans:400,300,600|Open+Sans+Condensed:300,700|Roboto+Condensed:400,300' rel='stylesheet' type='text/css'>
10 <link href='http://fonts.googleapis.com/css?family=Droid+Sans|Ubuntu:400,500,300italic|Open+Sans:400,300,600|Open+Sans+Condensed:300,700|Roboto+Condensed:400,300' rel='stylesheet' type='text/css'>
No newline at end of file
11 <link rel="stylesheet" href="{{ STATIC_URL }}css/style.css" type="text/css" />
12 <link rel="stylesheet" href="{% static 'static/css/style.css' %}" type="text/css" />
No newline at end of file
No newline at end of file
12 <script src="{{ STATIC_URL }}js/jquery-1.9.1.min.js"></script> No newline at end of file
13 <script src="{% static 'static/js/jquery-1.9.1.min.js' %}"></script> No newline at end of file
14 {% block scripting %}{% endblock %} No newline at end of file
13 {% block scripting %}{% endblock %}
15 <title>{% block title %}JRO WEB APPS::::{% endblock %}</title> No newline at end of file
14 <title>{% block title %}JRO WEB APPS::::{% endblock %}</title>
16 <meta name="description" content="JRO WEB APPLICATIONS" /> No newline at end of file
15 <meta name="description" content="JRO WEB APPLICATIONS" />
17 <meta name="author" content="Jose Antonio Sal y Rosas Celi" /> No newline at end of file
16 <meta name="author" content="Jose Antonio Sal y Rosas Celi" />
18 No newline at end of file
17
19 {# <meta name="viewport" content="width=device-width; initial-scale=1.0" /> #} No newline at end of file
18 {# <meta name="viewport" content="width=device-width; initial-scale=1.0" /> #}
20 {% comment %} No newline at end of file
19 {% comment %}
21 <!-- Replace favicon.ico & apple-touch-icon.png in the root of your domain and delete these references --> No newline at end of file
20 <!-- Replace favicon.ico & apple-touch-icon.png in the root of your domain and delete these references -->
22 <link rel="shortcut icon" href="/favicon.ico" /> No newline at end of file
21 <link rel="shortcut icon" href="/favicon.ico" />
23 <link rel="apple-touch-icon" href="/apple-touch-icon.png" /> No newline at end of file
22 <link rel="apple-touch-icon" href="/apple-touch-icon.png" />
24 {% endcomment %} No newline at end of file
23 {% endcomment %}
25 </head> No newline at end of file
24 </head>
26 <body> No newline at end of file
25 <body>
27 <div id="schema"> No newline at end of file
26 <div id="schema">
28 <header> No newline at end of file
27 <header>
29 {% block header %} No newline at end of file
28 {% block header %}
30 <div id="Main_Head"> No newline at end of file
29 <div id="Main_Head">
31 <label class="Main_Title">Jicamarca Radio Observatory</label> No newline at end of file
30 <label class="Main_Title">Jicamarca Radio Observatory</label>
32 </div> No newline at end of file
31 </div>
33 {% endblock %} No newline at end of file
32 {% endblock %}
34 </header> No newline at end of file
33 </header>
35 {% block content %} No newline at end of file
34 {% block content %}
36 <div id="content"></div> No newline at end of file
35 <div id="content"></div>
37 {% endblock %} No newline at end of file
36 {% endblock %}
38 <footer> No newline at end of file
37 <footer>
39 {% block footer %} No newline at end of file
38 {% block footer %}
40 <p>&copy; Copyright 2013 by Jicamarca Radio Observatory</p> No newline at end of file
39 <p>&copy; Copyright 2013 by Jicamarca Radio Observatory</p>
41 {% endblock %} No newline at end of file
40 {% endblock %}
42 </footer> No newline at end of file
41 </footer>
43 </div> No newline at end of file
42 </div>
44 </body> No newline at end of file
43 </body>
45 </html> No newline at end of file
44 </html>
1 NO CONTENT: file was removed
NO CONTENT: file was removed
1 NO CONTENT: file was removed
NO CONTENT: file was removed
1 NO CONTENT: file was removed
NO CONTENT: file was removed
General Comments 0
You need to be logged in to leave comments. Login now