PageSourceSearch

https://musees-reims.fr/local/cache-js/a9e8f170897f04d97a20cf4d4c25fc4e.js?1788357491

js musees-reims.fr collected 2026-09-24 09:36:15 UTC 210,121 bytes, 8,984 lines download raw bytes

vendor: 8,108 bytes, lines 1-388
1/* compact [
2	squelettes/javascript/jquery.js?1683278247
3	prive/javascript/jquery.form.js?1788355677
4	prive/javascript/jquery.autosave.js?1788355677
5	prive/javascript/jquery.placeholder-label.js?1788355677
6	prive/javascript/ajaxCallback.js?1788355677
7	plugins/alphamosa/javascript/alphamosa-img.js
8	local/cache-js/js.cookie-minify-b173.js?1787661585
9	local/cache-js/sharer-minify-7813.js?1787661585
10	local/cache-js/minimasonry-minify-5a47.js?1787661585
11] 54.2% */
12
13/* squelettes/javascript/jquery.js?1683278247 */
14
15(function(global,factory){
16"use strict";
17if(typeof module==="object"&&typeof module.exports==="object"){
18module.exports=global.document?
19factory(global,true):
20function(w){
21if(!w.document){
22throw new Error("jQuery requires a window with a document");
23}
24return factory(w);
25};
26}else{
27factory(global);
28}
29})(typeof window!=="undefined"?window:this,function(window,noGlobal){
30"use strict";
31var arr=[];
32var getProto=Object.getPrototypeOf;
33var slice=arr.slice;
34var flat=arr.flat?function(array){
35return arr.flat.call(array);
36}:function(array){
37return arr.concat.apply([],array);
38};
39var push=arr.push;
40var indexOf=arr.indexOf;
41var class2type={};
42var toString=class2type.toString;
43var hasOwn=class2type.hasOwnProperty;
44var fnToString=hasOwn.toString;
45var ObjectFunctionString=fnToString.call(Object);
46var support={};
47var isFunction=function isFunction(obj){
48return typeof obj==="function"&&typeof obj.nodeType!=="number"&&
49typeof obj.item!=="function";
50};
51var isWindow=function isWindow(obj){
52return obj!=null&&obj===obj.window;
53};
54var document=window.document;
55var preservedScriptAttributes={
56type:true,
57src:true,
58nonce:true,
59noModule:true
60};
61function DOMEval(code,node,doc){
62doc=doc||document;
63var i,val,
64script=doc.createElement("script");
65script.text=code;
66if(node){
67for(i in preservedScriptAttributes){
68val=node[i]||node.getAttribute&&node.getAttribute(i);
69if(val){
70script.setAttribute(i,val);
71}
72}
73}
74doc.head.appendChild(script).parentNode.removeChild(script);
75}
76function toType(obj){
77if(obj==null){
78return obj+"";
79}
80return typeof obj==="object"||typeof obj==="function"?
81class2type[toString.call(obj)]||"object":
82typeof obj;
83}
84var
85version="3.6.4",
86jQuery=function(selector,context){
87return new jQuery.fn.init(selector,context);
88};
89jQuery.fn=jQuery.prototype={
90jquery:version,
91constructor:jQuery,
92length:0,
93toArray:function(){
94return slice.call(this);
95},
96get:function(num){
97if(num==null){
98return slice.call(this);
99}
100return num<0?this[num+this.length]:this[num];
101},
102pushStack:function(elems){
103var ret=jQuery.merge(this.constructor(),elems);
104ret.prevObject=this;
105return ret;
106},
107each:function(callback){
108return jQuery.each(this,callback);
109},
110map:function(callback){
111return this.pushStack(jQuery.map(this,function(elem,i){
112return callback.call(elem,i,elem);
113}));
114},
115slice:function(){
116return this.pushStack(slice.apply(this,arguments));
117},
118first:function(){
119return this.eq(0);
120},
121last:function(){
122return this.eq(-1);
123},
124even:function(){
125return this.pushStack(jQuery.grep(this,function(_elem,i){
126return(i+1)%2;
127}));
128},
129odd:function(){
130return this.pushStack(jQuery.grep(this,function(_elem,i){
131return i%2;
132}));
133},
134eq:function(i){
135var len=this.length,
136j=+i+(i<0?len:0);
137return this.pushStack(j>=0&&j<len?[this[j]]:[]);
138},
139end:function(){
140return this.prevObject||this.constructor();
141},
142push:push,
143sort:arr.sort,
144splice:arr.splice
145};
146jQuery.extend=jQuery.fn.extend=function(){
147var options,name,src,copy,copyIsArray,clone,
148target=arguments[0]||{},
149i=1,
150length=arguments.length,
151deep=false;
152if(typeof target==="boolean"){
153deep=target;
154target=arguments[i]||{};
155i++;
156}
157if(typeof target!=="object"&&!isFunction(target)){
158target={};
159}
160if(i===length){
161target=this;
162i--;
163}
164for(;i<length;i++){
165if((options=arguments[i])!=null){
166for(name in options){
167copy=options[name];
168if(name==="__proto__"||target===copy){
169continue;
170}
171if(deep&&copy&&(jQuery.isPlainObject(copy)||
172(copyIsArray=Array.isArray(copy)))){
173src=target[name];
174if(copyIsArray&&!Array.isArray(src)){
175clone=[];
176}else if(!copyIsArray&&!jQuery.isPlainObject(src)){
177clone={};
178}else{
179clone=src;
180}
181copyIsArray=false;
182target[name]=jQuery.extend(deep,clone,copy);
183}else if(copy!==undefined){
184target[name]=copy;
185}
186}
187}
188}
189return target;
190};
191jQuery.extend({
192expando:"jQuery"+(version+Math.random()).replace(/\D/g,""),
193isReady:true,
194error:function(msg){
195throw new Error(msg);
196},
197noop:function(){},
198isPlainObject:function(obj){
199var proto,Ctor;
200if(!obj||toString.call(obj)!=="[object Object]"){
201return false;
202}
203proto=getProto(obj);
204if(!proto){
205return true;
206}
207Ctor=hasOwn.call(proto,"constructor")&&proto.constructor;
208return typeof Ctor==="function"&&fnToString.call(Ctor)===ObjectFunctionString;
209},
210isEmptyObject:function(obj){
211var name;
212for(name in obj){
213return false;
214}
215return true;
216},
217globalEval:function(code,options,doc){
218DOMEval(code,{nonce:options&&options.nonce},doc);
219},
220each:function(obj,callback){
221var length,i=0;
222if(isArrayLike(obj)){
223length=obj.length;
224for(;i<length;i++){
225if(callback.call(obj[i],i,obj[i])===false){
226break;
227}
228}
229}else{
230for(i in obj){
231if(callback.call(obj[i],i,obj[i])===false){
232break;
233}
234}
235}
236return obj;
237},
238makeArray:function(arr,results){
239var ret=results||[];
240if(arr!=null){
241if(isArrayLike(Object(arr))){
242jQuery.merge(ret,
243typeof arr==="string"?
244[arr]:arr
245);
246}else{
247push.call(ret,arr);
248}
249}
250return ret;
251},
252inArray:function(elem,arr,i){
253return arr==null?-1:indexOf.call(arr,elem,i);
254},
255merge:function(first,second){
256var len=+second.length,
257j=0,
258i=first.length;
259for(;j<len;j++){
260first[i++]=second[j];
261}
262first.length=i;
263return first;
264},
265grep:function(elems,callback,invert){
266var callbackInverse,
267matches=[],
268i=0,
269length=elems.length,
270callbackExpect=!invert;
271for(;i<length;i++){
272callbackInverse=!callback(elems[i],i);
273if(callbackInverse!==callbackExpect){
274matches.push(elems[i]);
275}
276}
277return matches;
278},
279map:function(elems,callback,arg){
280var length,value,
281i=0,
282ret=[];
283if(isArrayLike(elems)){
284length=elems.length;
285for(;i<length;i++){
286value=callback(elems[i],i,arg);
287if(value!=null){
288ret.push(value);
289}
290}
291}else{
292for(i in elems){
293value=callback(elems[i],i,arg);
294if(value!=null){
295ret.push(value);
296}
297}
298}
299return flat(ret);
300},
301guid:1,
302support:support
303});
304if(typeof Symbol==="function"){
305jQuery.fn[Symbol.iterator]=arr[Symbol.iterator];
306}
307jQuery.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),
308function(_i,name){
309class2type["[object "+name+"]"]=name.toLowerCase();
310});
311function isArrayLike(obj){
312var length=!!obj&&"length"in obj&&obj.length,
313type=toType(obj);
314if(isFunction(obj)||isWindow(obj)){
315return false;
316}
317return type==="array"||length===0||
318typeof length==="number"&&length>0&&(length-1)in obj;
319}
320var Sizzle=
321(function(window){
322var i,
323support,
324Expr,
325getText,
326isXML,
327tokenize,
328compile,
329select,
330outermostContext,
331sortInput,
332hasDuplicate,
333setDocument,
334document,
335docElem,
336documentIsHTML,
337rbuggyQSA,
338rbuggyMatches,
339matches,
340contains,
341expando="sizzle"+1*new Date(),
342preferredDoc=window.document,
343dirruns=0,
344done=0,
345classCache=createCache(),
346tokenCache=createCache(),
347compilerCache=createCache(),
348nonnativeSelectorCache=createCache(),
349sortOrder=function(a,b){
350if(a===b){
351hasDuplicate=true;
352}
353return 0;
354},
355hasOwn=({}).hasOwnProperty,
356arr=[],
357pop=arr.pop,
358pushNative=arr.push,
359push=arr.push,
360slice=arr.slice,
361indexOf=function(list,elem){
362var i=0,
363len=list.length;
364for(;i<len;i++){
365if(list[i]===elem){
366return i;
367}
368}
369return-1;
370},
371booleans="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|"+
372"ismap|loop|multiple|open|readonly|required|scoped",
373whitespace="[\\x20\\t\\r\\n\\f]",
374identifier="(?:\\\\[\\da-fA-F]{1,6}"+whitespace+
375"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",
376attributes="\\["+whitespace+"*("+identifier+")(?:"+whitespace+
377"*([*^$|!~]?=)"+whitespace+
378"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+identifier+"))|)"+
379whitespace+"*\\]",
380pseudos=":("+identifier+")(?:\\(("+
381"('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|"+
382"((?:\\\\.|[^\\\\()[\\]]|"+attributes+")*)|"+
383".*"+
384")\\)|)",
385rwhitespace=new RegExp(whitespace+"+","g"),
386rtrim=new RegExp("^"+whitespace+"+|((?:^|[^\\\\])(?:\\\\.)*)"+
387whitespace+"+$","g"),
388rcomma=new RegExp("^"+whitespace+"*,"+whitespace+"*"),
389rleadingCombinator=new RegExp("^"+whitespace+"*([>+~]|"+whitespace+")"+whitespace+
390"*"),
391rdescend=new RegExp(whitespace+"|>"),
392rpseudo=new RegExp(pseudos),
393ridentifier=new RegExp("^"+identifier+"$"),
394matchExpr={
395"ID":new RegExp("^#("+identifier+")"),
396"CLASS":new RegExp("^\\.("+identifier+")"),
397"TAG":new RegExp("^("+identifier+"|[*])"),
398"ATTR":new RegExp("^"+attributes),
399"PSEUDO":new RegExp("^"+pseudos),
400"CHILD":new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+
401whitespace+"*(even|odd|(([+-]|)(\\d*)n|)"+whitespace+"*(?:([+-]|)"+
402whitespace+"*(\\d+)|))"+whitespace+"*\\)|)","i"),
403"bool":new RegExp("^(?:"+booleans+")$","i"),
404"needsContext":new RegExp("^"+whitespace+
405"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+whitespace+
406"*((?:-\\d)?\\d*)"+whitespace+"*\\)|)(?=[^-]|$)","i")
407},
408rhtml=/HTML$/i,
409rinputs=/^(?:input|select|textarea|button)$/i,
410rheader=/^h\d$/i,
411rnative=/^[^{]+\{\s*\[native \w/,
412rquickExpr=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
413rsibling=/[+~]/,
414runescape=new RegExp("\\\\[\\da-fA-F]{1,6}"+whitespace+"?|\\\\([^\\r\\n\\f])","g"),
415funescape=function(escape,nonHex){
416var high="0x"+escape.slice(1)-0x10000;
417return nonHex?
418nonHex:
419high<0?
420String.fromCharCode(high+0x10000):
421String.fromCharCode(high>>10|0xD800,high&0x3FF|0xDC00);
422},
423rcssescape=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,
424fcssescape=function(ch,asCodePoint){
425if(asCodePoint){
426if(ch==="\0"){
427return"\uFFFD";
428}
429return ch.slice(0,-1)+"\\"+
430ch.charCodeAt(ch.length-1).toString(16)+" ";
431}
432return"\\"+ch;
433},
434unloadHandler=function(){
435setDocument();
436},
437inDisabledFieldset=addCombinator(
438function(elem){
439return elem.disabled===true&&elem.nodeName.toLowerCase()==="fieldset";
440},
441{dir:"parentNode",next:"legend"}
442);
443try{
444push.apply(
445(arr=slice.call(preferredDoc.childNodes)),
446preferredDoc.childNodes
447);
448arr[preferredDoc.childNodes.length].nodeType;
449}catch(e){
450push={apply:arr.length?
451function(target,els){
452pushNative.apply(target,slice.call(els));
453}:
454function(target,els){
455var j=target.length,
456i=0;
457while((target[j++]=els[i++])){}
458target.length=j-1;
459}
460};
461}
462function Sizzle(selector,context,results,seed){
463var m,i,elem,nid,match,groups,newSelector,
464newContext=context&&context.ownerDocument,
465nodeType=context?context.nodeType:9;
466results=results||[];
467if(typeof selector!=="string"||!selector||
468nodeType!==1&&nodeType!==9&&nodeType!==11){
469return results;
470}
471if(!seed){
472setDocument(context);
473context=context||document;
474if(documentIsHTML){
475if(nodeType!==11&&(match=rquickExpr.exec(selector))){
476if((m=match[1])){
477if(nodeType===9){
478if((elem=context.getElementById(m))){
479if(elem.id===m){
480results.push(elem);
481return results;
482}
483}else{
484return results;
485}
486}else{
487if(newContext&&(elem=newContext.getElementById(m))&&
488contains(context,elem)&&
489elem.id===m){
490results.push(elem);
491return results;
492}
493}
494}else if(match[2]){
495push.apply(results,context.getElementsByTagName(selector));
496return results;
497}else if((m=match[3])&&support.getElementsByClassName&&
498context.getElementsByClassName){
499push.apply(results,context.getElementsByClassName(m));
500return results;
501}
502}
503if(support.qsa&&
504!nonnativeSelectorCache[selector+" "]&&
505(!rbuggyQSA||!rbuggyQSA.test(selector))&&
506(nodeType!==1||context.nodeName.toLowerCase()!=="object")){
507newSelector=selector;
508newContext=context;
509if(nodeType===1&&
510(rdescend.test(selector)||rleadingCombinator.test(selector))){
511newContext=rsibling.test(selector)&&testContext(context.parentNode)||
512context;
513if(newContext!==context||!support.scope){
514if((nid=context.getAttribute("id"))){
515nid=nid.replace(rcssescape,fcssescape);
516}else{
517context.setAttribute("id",(nid=expando));
518}
519}
520groups=tokenize(selector);
521i=groups.length;
522while(i--){
523groups[i]=(nid?"#"+nid:":scope")+" "+
524toSelector(groups[i]);
525}
526newSelector=groups.join(",");
527}
528try{
529push.apply(results,
530newContext.querySelectorAll(newSelector)
531);
532return results;
533}catch(qsaError){
534nonnativeSelectorCache(selector,true);
535}finally{
536if(nid===expando){
537context.removeAttribute("id");
538}
539}
540}
541}
542}
543return select(selector.replace(rtrim,"$1"),context,results,seed);
544}
545function createCache(){
546var keys=[];
547function cache(key,value){
548if(keys.push(key+" ")>Expr.cacheLength){
549delete cache[keys.shift()];
550}
551return(cache[key+" "]=value);
552}
553return cache;
554}
555function markFunction(fn){
556fn[expando]=true;
557return fn;
558}
559function assert(fn){
560var el=document.createElement("fieldset");
561try{
562return!!fn(el);
563}catch(e){
564return false;
565}finally{
566if(el.parentNode){
567el.parentNode.removeChild(el);
568}
569el=null;
570}
571}
572function addHandle(attrs,handler){
573var arr=attrs.split("|"),
574i=arr.length;
575while(i--){
576Expr.attrHandle[arr[i]]=handler;
577}
578}
579function siblingCheck(a,b){
580var cur=b&&a,
581diff=cur&&a.nodeType===1&&b.nodeType===1&&
582a.sourceIndex-b.sourceIndex;
583if(diff){
584return diff;
585}
586if(cur){
587while((cur=cur.nextSibling)){
588if(cur===b){
589return-1;
590}
591}
592}
593return a?1:-1;
594}
595function createInputPseudo(type){
596return function(elem){
597var name=elem.nodeName.toLowerCase();
598return name==="input"&&elem.type===type;
599};
600}
601function createButtonPseudo(type){
602return function(elem){
603var name=elem.nodeName.toLowerCase();
604return(name==="input"||name==="button")&&elem.type===type;
605};
606}
607function createDisabledPseudo(disabled){
608return function(elem){
609if("form"in elem){
610if(elem.parentNode&&elem.disabled===false){
611if("label"in elem){
612if("label"in elem.parentNode){
613return elem.parentNode.disabled===disabled;
614}else{
615return elem.disabled===disabled;
616}
617}
618return elem.isDisabled===disabled||
619elem.isDisabled!==!disabled&&
620inDisabledFieldset(elem)===disabled;
621}
622return elem.disabled===disabled;
623}else if("label"in elem){
624return elem.disabled===disabled;
625}
626return false;
627};
628}
629function createPositionalPseudo(fn){
630return markFunction(function(argument){
631argument=+argument;
632return markFunction(function(seed,matches){
633var j,
634matchIndexes=fn([],seed.length,argument),
635i=matchIndexes.length;
636while(i--){
637if(seed[(j=matchIndexes[i])]){
638seed[j]=!(matches[j]=seed[j]);
639}
640}
641});
642});
643}
644function testContext(context){
645return context&&typeof context.getElementsByTagName!=="undefined"&&context;
646}
647support=Sizzle.support={};
648isXML=Sizzle.isXML=function(elem){
649var namespace=elem&&elem.namespaceURI,
650docElem=elem&&(elem.ownerDocument||elem).documentElement;
651return!rhtml.test(namespace||docElem&&docElem.nodeName||"HTML");
652};
653setDocument=Sizzle.setDocument=function(node){
654var hasCompare,subWindow,
655doc=node?node.ownerDocument||node:preferredDoc;
656if(doc==document||doc.nodeType!==9||!doc.documentElement){
657return document;
658}
659document=doc;
660docElem=document.documentElement;
661documentIsHTML=!isXML(document);
662if(preferredDoc!=document&&
663(subWindow=document.defaultView)&&subWindow.top!==subWindow){
664if(subWindow.addEventListener){
665subWindow.addEventListener("unload",unloadHandler,false);
666}else if(subWindow.attachEvent){
667subWindow.attachEvent("onunload",unloadHandler);
668}
669}
670support.scope=assert(function(el){
671docElem.appendChild(el).appendChild(document.createElement("div"));
672return typeof el.querySelectorAll!=="undefined"&&
673!el.querySelectorAll(":scope fieldset div").length;
674});
675support.cssHas=assert(function(){
676try{
677document.querySelector(":has(*,:jqfake)");
678return false;
679}catch(e){
680return true;
681}
682});
683support.attributes=assert(function(el){
684el.className="i";
685return!el.getAttribute("className");
686});
687support.getElementsByTagName=assert(function(el){
688el.appendChild(document.createComment(""));
689return!el.getElementsByTagName("*").length;
690});
691support.getElementsByClassName=rnative.test(document.getElementsByClassName);
692support.getById=assert(function(el){
693docElem.appendChild(el).id=expando;
694return!document.getElementsByName||!document.getElementsByName(expando).length;
695});
696if(support.getById){
697Expr.filter["ID"]=function(id){
698var attrId=id.replace(runescape,funescape);
699return function(elem){
700return elem.getAttribute("id")===attrId;
701};
702};
703Expr.find["ID"]=function(id,context){
704if(typeof context.getElementById!=="undefined"&&documentIsHTML){
705var elem=context.getElementById(id);
706return elem?[elem]:[];
707}
708};
709}else{
710Expr.filter["ID"]=function(id){
711var attrId=id.replace(runescape,funescape);
712return function(elem){
713var node=typeof elem.getAttributeNode!=="undefined"&&
714elem.getAttributeNode("id");
715return node&&node.value===attrId;
716};
717};
718Expr.find["ID"]=function(id,context){
719if(typeof context.getElementById!=="undefined"&&documentIsHTML){
720var node,i,elems,
721elem=context.getElementById(id);
722if(elem){
723node=elem.getAttributeNode("id");
724if(node&&node.value===id){
725return[elem];
726}
727elems=context.getElementsByName(id);
728i=0;
729while((elem=elems[i++])){
730node=elem.getAttributeNode("id");
731if(node&&node.value===id){
732return[elem];
733}
734}
735}
736return[];
737}
738};
739}
740Expr.find["TAG"]=support.getElementsByTagName?
741function(tag,context){
742if(typeof context.getElementsByTagName!=="undefined"){
743return context.getElementsByTagName(tag);
744}else if(support.qsa){
745return context.querySelectorAll(tag);
746}
747}:
748function(tag,context){
749var elem,
750tmp=[],
751i=0,
752results=context.getElementsByTagName(tag);
753if(tag==="*"){
754while((elem=results[i++])){
755if(elem.nodeType===1){
756tmp.push(elem);
757}
758}
759return tmp;
760}
761return results;
762};
763Expr.find["CLASS"]=support.getElementsByClassName&&function(className,context){
764if(typeof context.getElementsByClassName!=="undefined"&&documentIsHTML){
765return context.getElementsByClassName(className);
766}
767};
768rbuggyMatches=[];
769rbuggyQSA=[];
770if((support.qsa=rnative.test(document.querySelectorAll))){
771assert(function(el){
772var input;
773docElem.appendChild(el).innerHTML="<a id='"+expando+"'></a>"+
774"<select id='"+expando+"-\r\\' msallowcapture=''>"+
775"<option selected=''></option></select>";
776if(el.querySelectorAll("[msallowcapture^='']").length){
777rbuggyQSA.push("[*^$]="+whitespace+"*(?:''|\"\")");
778}
779if(!el.querySelectorAll("[selected]").length){
780rbuggyQSA.push("\\["+whitespace+"*(?:value|"+booleans+")");
781}
782if(!el.querySelectorAll("[id~="+expando+"-]").length){
783rbuggyQSA.push("~=");
784}
785input=document.createElement("input");
786input.setAttribute("name","");
787el.appendChild(input);
788if(!el.querySelectorAll("[name='']").length){
789rbuggyQSA.push("\\["+whitespace+"*name"+whitespace+"*="+
790whitespace+"*(?:''|\"\")");
791}
792if(!el.querySelectorAll(":checked").length){
793rbuggyQSA.push(":checked");
794}
795if(!el.querySelectorAll("a#"+expando+"+*").length){
796rbuggyQSA.push(".#.+[+~]");
797}
798el.querySelectorAll("\\\f");
799rbuggyQSA.push("[\\r\\n\\f]");
800});
801assert(function(el){
802el.innerHTML="<a href='' disabled='disabled'></a>"+
803"<select disabled='disabled'><option/></select>";
804var input=document.createElement("input");
805input.setAttribute("type","hidden");
806el.appendChild(input).setAttribute("name","D");
807if(el.querySelectorAll("[name=d]").length){
808rbuggyQSA.push("name"+whitespace+"*[*^$|!~]?=");
809}
810if(el.querySelectorAll(":enabled").length!==2){
811rbuggyQSA.push(":enabled",":disabled");
812}
813docElem.appendChild(el).disabled=true;
814if(el.querySelectorAll(":disabled").length!==2){
815rbuggyQSA.push(":enabled",":disabled");
816}
817el.querySelectorAll("*,:x");
818rbuggyQSA.push(",.*:");
819});
820}
821if((support.matchesSelector=rnative.test((matches=docElem.matches||
822docElem.webkitMatchesSelector||
823docElem.mozMatchesSelector||
824docElem.oMatchesSelector||
825docElem.msMatchesSelector)))){
826assert(function(el){
827support.disconnectedMatch=matches.call(el,"*");
828matches.call(el,"[s!='']:x");
829rbuggyMatches.push("!=",pseudos);
830});
831}
832if(!support.cssHas){
833rbuggyQSA.push(":has");
834}
vendor: 29,044 bytes, lines 835-2155
835rbuggyQSA=rbuggyQSA.length&&new RegExp(rbuggyQSA.join("|"));
836rbuggyMatches=rbuggyMatches.length&&new RegExp(rbuggyMatches.join("|"));
837hasCompare=rnative.test(docElem.compareDocumentPosition);
838contains=hasCompare||rnative.test(docElem.contains)?
839function(a,b){
840var adown=a.nodeType===9&&a.documentElement||a,
841bup=b&&b.parentNode;
842return a===bup||!!(bup&&bup.nodeType===1&&(
843adown.contains?
844adown.contains(bup):
845a.compareDocumentPosition&&a.compareDocumentPosition(bup)&16
846));
847}:
848function(a,b){
849if(b){
850while((b=b.parentNode)){
851if(b===a){
852return true;
853}
854}
855}
856return false;
857};
858sortOrder=hasCompare?
859function(a,b){
860if(a===b){
861hasDuplicate=true;
862return 0;
863}
864var compare=!a.compareDocumentPosition-!b.compareDocumentPosition;
865if(compare){
866return compare;
867}
868compare=(a.ownerDocument||a)==(b.ownerDocument||b)?
869a.compareDocumentPosition(b):
8701;
871if(compare&1||
872(!support.sortDetached&&b.compareDocumentPosition(a)===compare)){
873if(a==document||a.ownerDocument==preferredDoc&&
874contains(preferredDoc,a)){
875return-1;
876}
877if(b==document||b.ownerDocument==preferredDoc&&
878contains(preferredDoc,b)){
879return 1;
880}
881return sortInput?
882(indexOf(sortInput,a)-indexOf(sortInput,b)):
8830;
884}
885return compare&4?-1:1;
886}:
887function(a,b){
888if(a===b){
889hasDuplicate=true;
890return 0;
891}
892var cur,
893i=0,
894aup=a.parentNode,
895bup=b.parentNode,
896ap=[a],
897bp=[b];
898if(!aup||!bup){
899return a==document?-1:
900b==document?1:
901aup?-1:
902bup?1:
903sortInput?
904(indexOf(sortInput,a)-indexOf(sortInput,b)):
9050;
906}else if(aup===bup){
907return siblingCheck(a,b);
908}
909cur=a;
910while((cur=cur.parentNode)){
911ap.unshift(cur);
912}
913cur=b;
914while((cur=cur.parentNode)){
915bp.unshift(cur);
916}
917while(ap[i]===bp[i]){
918i++;
919}
920return i?
921siblingCheck(ap[i],bp[i]):
922ap[i]==preferredDoc?-1:
923bp[i]==preferredDoc?1:
9240;
925};
926return document;
927};
928Sizzle.matches=function(expr,elements){
929return Sizzle(expr,null,null,elements);
930};
931Sizzle.matchesSelector=function(elem,expr){
932setDocument(elem);
933if(support.matchesSelector&&documentIsHTML&&
934!nonnativeSelectorCache[expr+" "]&&
935(!rbuggyMatches||!rbuggyMatches.test(expr))&&
936(!rbuggyQSA||!rbuggyQSA.test(expr))){
937try{
938var ret=matches.call(elem,expr);
939if(ret||support.disconnectedMatch||
940elem.document&&elem.document.nodeType!==11){
941return ret;
942}
943}catch(e){
944nonnativeSelectorCache(expr,true);
945}
946}
947return Sizzle(expr,document,null,[elem]).length>0;
948};
949Sizzle.contains=function(context,elem){
950if((context.ownerDocument||context)!=document){
951setDocument(context);
952}
953return contains(context,elem);
954};
955Sizzle.attr=function(elem,name){
956if((elem.ownerDocument||elem)!=document){
957setDocument(elem);
958}
959var fn=Expr.attrHandle[name.toLowerCase()],
960val=fn&&hasOwn.call(Expr.attrHandle,name.toLowerCase())?
961fn(elem,name,!documentIsHTML):
962undefined;
963return val!==undefined?
964val:
965support.attributes||!documentIsHTML?
966elem.getAttribute(name):
967(val=elem.getAttributeNode(name))&&val.specified?
968val.value:
969null;
970};
971Sizzle.escape=function(sel){
972return(sel+"").replace(rcssescape,fcssescape);
973};
974Sizzle.error=function(msg){
975throw new Error("Syntax error, unrecognized expression: "+msg);
976};
977Sizzle.uniqueSort=function(results){
978var elem,
979duplicates=[],
980j=0,
981i=0;
982hasDuplicate=!support.detectDuplicates;
983sortInput=!support.sortStable&&results.slice(0);
984results.sort(sortOrder);
985if(hasDuplicate){
986while((elem=results[i++])){
987if(elem===results[i]){
988j=duplicates.push(i);
989}
990}
991while(j--){
992results.splice(duplicates[j],1);
993}
994}
995sortInput=null;
996return results;
997};
998getText=Sizzle.getText=function(elem){
999var node,
1000ret="",
1001i=0,
1002nodeType=elem.nodeType;
1003if(!nodeType){
1004while((node=elem[i++])){
1005ret+=getText(node);
1006}
1007}else if(nodeType===1||nodeType===9||nodeType===11){
1008if(typeof elem.textContent==="string"){
1009return elem.textContent;
1010}else{
1011for(elem=elem.firstChild;elem;elem=elem.nextSibling){
1012ret+=getText(elem);
1013}
1014}
1015}else if(nodeType===3||nodeType===4){
1016return elem.nodeValue;
1017}
1018return ret;
1019};
1020Expr=Sizzle.selectors={
1021cacheLength:50,
1022createPseudo:markFunction,
1023match:matchExpr,
1024attrHandle:{},
1025find:{},
1026relative:{
1027">":{dir:"parentNode",first:true},
1028" ":{dir:"parentNode"},
1029"+":{dir:"previousSibling",first:true},
1030"~":{dir:"previousSibling"}
1031},
1032preFilter:{
1033"ATTR":function(match){
1034match[1]=match[1].replace(runescape,funescape);
1035match[3]=(match[3]||match[4]||
1036match[5]||"").replace(runescape,funescape);
1037if(match[2]==="~="){
1038match[3]=" "+match[3]+" ";
1039}
1040return match.slice(0,4);
1041},
1042"CHILD":function(match){
1043match[1]=match[1].toLowerCase();
1044if(match[1].slice(0,3)==="nth"){
1045if(!match[3]){
1046Sizzle.error(match[0]);
1047}
1048match[4]=+(match[4]?
1049match[5]+(match[6]||1):
10502*(match[3]==="even"||match[3]==="odd"));
1051match[5]=+((match[7]+match[8])||match[3]==="odd");
1052}else if(match[3]){
1053Sizzle.error(match[0]);
1054}
1055return match;
1056},
1057"PSEUDO":function(match){
1058var excess,
1059unquoted=!match[6]&&match[2];
1060if(matchExpr["CHILD"].test(match[0])){
1061return null;
1062}
1063if(match[3]){
1064match[2]=match[4]||match[5]||"";
1065}else if(unquoted&&rpseudo.test(unquoted)&&
1066(excess=tokenize(unquoted,true))&&
1067(excess=unquoted.indexOf(")",unquoted.length-excess)-unquoted.length)){
1068match[0]=match[0].slice(0,excess);
1069match[2]=unquoted.slice(0,excess);
1070}
1071return match.slice(0,3);
1072}
1073},
1074filter:{
1075"TAG":function(nodeNameSelector){
1076var nodeName=nodeNameSelector.replace(runescape,funescape).toLowerCase();
1077return nodeNameSelector==="*"?
1078function(){
1079return true;
1080}:
1081function(elem){
1082return elem.nodeName&&elem.nodeName.toLowerCase()===nodeName;
1083};
1084},
1085"CLASS":function(className){
1086var pattern=classCache[className+" "];
1087return pattern||
1088(pattern=new RegExp("(^|"+whitespace+
1089")"+className+"("+whitespace+"|$)"))&&classCache(
1090className,function(elem){
1091return pattern.test(
1092typeof elem.className==="string"&&elem.className||
1093typeof elem.getAttribute!=="undefined"&&
1094elem.getAttribute("class")||
1095""
1096);
1097});
1098},
1099"ATTR":function(name,operator,check){
1100return function(elem){
1101var result=Sizzle.attr(elem,name);
1102if(result==null){
1103return operator==="!=";
1104}
1105if(!operator){
1106return true;
1107}
1108result+="";
1109return operator==="="?result===check:
1110operator==="!="?result!==check:
1111operator==="^="?check&&result.indexOf(check)===0:
1112operator==="*="?check&&result.indexOf(check)>-1:
1113operator==="$="?check&&result.slice(-check.length)===check:
1114operator==="~="?(" "+result.replace(rwhitespace," ")+" ").indexOf(check)>-1:
1115operator==="|="?result===check||result.slice(0,check.length+1)===check+"-":
1116false;
1117};
1118},
1119"CHILD":function(type,what,_argument,first,last){
1120var simple=type.slice(0,3)!=="nth",
1121forward=type.slice(-4)!=="last",
1122ofType=what==="of-type";
1123return first===1&&last===0?
1124function(elem){
1125return!!elem.parentNode;
1126}:
1127function(elem,_context,xml){
1128var cache,uniqueCache,outerCache,node,nodeIndex,start,
1129dir=simple!==forward?"nextSibling":"previousSibling",
1130parent=elem.parentNode,
1131name=ofType&&elem.nodeName.toLowerCase(),
1132useCache=!xml&&!ofType,
1133diff=false;
1134if(parent){
1135if(simple){
1136while(dir){
1137node=elem;
1138while((node=node[dir])){
1139if(ofType?
1140node.nodeName.toLowerCase()===name:
1141node.nodeType===1){
1142return false;
1143}
1144}
1145start=dir=type==="only"&&!start&&"nextSibling";
1146}
1147return true;
1148}
1149start=[forward?parent.firstChild:parent.lastChild];
1150if(forward&&useCache){
1151node=parent;
1152outerCache=node[expando]||(node[expando]={});
1153uniqueCache=outerCache[node.uniqueID]||
1154(outerCache[node.uniqueID]={});
1155cache=uniqueCache[type]||[];
1156nodeIndex=cache[0]===dirruns&&cache[1];
1157diff=nodeIndex&&cache[2];
1158node=nodeIndex&&parent.childNodes[nodeIndex];
1159while((node=++nodeIndex&&node&&node[dir]||
1160(diff=nodeIndex=0)||start.pop())){
1161if(node.nodeType===1&&++diff&&node===elem){
1162uniqueCache[type]=[dirruns,nodeIndex,diff];
1163break;
1164}
1165}
1166}else{
1167if(useCache){
1168node=elem;
1169outerCache=node[expando]||(node[expando]={});
1170uniqueCache=outerCache[node.uniqueID]||
1171(outerCache[node.uniqueID]={});
1172cache=uniqueCache[type]||[];
1173nodeIndex=cache[0]===dirruns&&cache[1];
1174diff=nodeIndex;
1175}
1176if(diff===false){
1177while((node=++nodeIndex&&node&&node[dir]||
1178(diff=nodeIndex=0)||start.pop())){
1179if((ofType?
1180node.nodeName.toLowerCase()===name:
1181node.nodeType===1)&&
1182++diff){
1183if(useCache){
1184outerCache=node[expando]||
1185(node[expando]={});
1186uniqueCache=outerCache[node.uniqueID]||
1187(outerCache[node.uniqueID]={});
1188uniqueCache[type]=[dirruns,diff];
1189}
1190if(node===elem){
1191break;
1192}
1193}
1194}
1195}
1196}
1197diff-=last;
1198return diff===first||(diff%first===0&&diff/first>=0);
1199}
1200};
1201},
1202"PSEUDO":function(pseudo,argument){
1203var args,
1204fn=Expr.pseudos[pseudo]||Expr.setFilters[pseudo.toLowerCase()]||
1205Sizzle.error("unsupported pseudo: "+pseudo);
1206if(fn[expando]){
1207return fn(argument);
1208}
1209if(fn.length>1){
1210args=[pseudo,pseudo,"",argument];
1211return Expr.setFilters.hasOwnProperty(pseudo.toLowerCase())?
1212markFunction(function(seed,matches){
1213var idx,
1214matched=fn(seed,argument),
1215i=matched.length;
1216while(i--){
1217idx=indexOf(seed,matched[i]);
1218seed[idx]=!(matches[idx]=matched[i]);
1219}
1220}):
1221function(elem){
1222return fn(elem,0,args);
1223};
1224}
1225return fn;
1226}
1227},
1228pseudos:{
1229"not":markFunction(function(selector){
1230var input=[],
1231results=[],
1232matcher=compile(selector.replace(rtrim,"$1"));
1233return matcher[expando]?
1234markFunction(function(seed,matches,_context,xml){
1235var elem,
1236unmatched=matcher(seed,null,xml,[]),
1237i=seed.length;
1238while(i--){
1239if((elem=unmatched[i])){
1240seed[i]=!(matches[i]=elem);
1241}
1242}
1243}):
1244function(elem,_context,xml){
1245input[0]=elem;
1246matcher(input,null,xml,results);
1247input[0]=null;
1248return!results.pop();
1249};
1250}),
1251"has":markFunction(function(selector){
1252return function(elem){
1253return Sizzle(selector,elem).length>0;
1254};
1255}),
1256"contains":markFunction(function(text){
1257text=text.replace(runescape,funescape);
1258return function(elem){
1259return(elem.textContent||getText(elem)).indexOf(text)>-1;
1260};
1261}),
1262"lang":markFunction(function(lang){
1263if(!ridentifier.test(lang||"")){
1264Sizzle.error("unsupported lang: "+lang);
1265}
1266lang=lang.replace(runescape,funescape).toLowerCase();
1267return function(elem){
1268var elemLang;
1269do{
1270if((elemLang=documentIsHTML?
1271elem.lang:
1272elem.getAttribute("xml:lang")||elem.getAttribute("lang"))){
1273elemLang=elemLang.toLowerCase();
1274return elemLang===lang||elemLang.indexOf(lang+"-")===0;
1275}
1276}while((elem=elem.parentNode)&&elem.nodeType===1);
1277return false;
1278};
1279}),
1280"target":function(elem){
1281var hash=window.location&&window.location.hash;
1282return hash&&hash.slice(1)===elem.id;
1283},
1284"root":function(elem){
1285return elem===docElem;
1286},
1287"focus":function(elem){
1288return elem===document.activeElement&&
1289(!document.hasFocus||document.hasFocus())&&
1290!!(elem.type||elem.href||~elem.tabIndex);
1291},
1292"enabled":createDisabledPseudo(false),
1293"disabled":createDisabledPseudo(true),
1294"checked":function(elem){
1295var nodeName=elem.nodeName.toLowerCase();
1296return(nodeName==="input"&&!!elem.checked)||
1297(nodeName==="option"&&!!elem.selected);
1298},
1299"selected":function(elem){
1300if(elem.parentNode){
1301elem.parentNode.selectedIndex;
1302}
1303return elem.selected===true;
1304},
1305"empty":function(elem){
1306for(elem=elem.firstChild;elem;elem=elem.nextSibling){
1307if(elem.nodeType<6){
1308return false;
1309}
1310}
1311return true;
1312},
1313"parent":function(elem){
1314return!Expr.pseudos["empty"](elem);
1315},
1316"header":function(elem){
1317return rheader.test(elem.nodeName);
1318},
1319"input":function(elem){
1320return rinputs.test(elem.nodeName);
1321},
1322"button":function(elem){
1323var name=elem.nodeName.toLowerCase();
1324return name==="input"&&elem.type==="button"||name==="button";
1325},
1326"text":function(elem){
1327var attr;
1328return elem.nodeName.toLowerCase()==="input"&&
1329elem.type==="text"&&
1330((attr=elem.getAttribute("type"))==null||
1331attr.toLowerCase()==="text");
1332},
1333"first":createPositionalPseudo(function(){
1334return[0];
1335}),
1336"last":createPositionalPseudo(function(_matchIndexes,length){
1337return[length-1];
1338}),
1339"eq":createPositionalPseudo(function(_matchIndexes,length,argument){
1340return[argument<0?argument+length:argument];
1341}),
1342"even":createPositionalPseudo(function(matchIndexes,length){
1343var i=0;
1344for(;i<length;i+=2){
1345matchIndexes.push(i);
1346}
1347return matchIndexes;
1348}),
1349"odd":createPositionalPseudo(function(matchIndexes,length){
1350var i=1;
1351for(;i<length;i+=2){
1352matchIndexes.push(i);
1353}
1354return matchIndexes;
1355}),
1356"lt":createPositionalPseudo(function(matchIndexes,length,argument){
1357var i=argument<0?
1358argument+length:
1359argument>length?
1360length:
1361argument;
1362for(;--i>=0;){
1363matchIndexes.push(i);
1364}
1365return matchIndexes;
1366}),
1367"gt":createPositionalPseudo(function(matchIndexes,length,argument){
1368var i=argument<0?argument+length:argument;
1369for(;++i<length;){
1370matchIndexes.push(i);
1371}
1372return matchIndexes;
1373})
1374}
1375};
1376Expr.pseudos["nth"]=Expr.pseudos["eq"];
1377for(i in{radio:true,checkbox:true,file:true,password:true,image:true}){
1378Expr.pseudos[i]=createInputPseudo(i);
1379}
1380for(i in{submit:true,reset:true}){
1381Expr.pseudos[i]=createButtonPseudo(i);
1382}
1383function setFilters(){}
1384setFilters.prototype=Expr.filters=Expr.pseudos;
1385Expr.setFilters=new setFilters();
1386tokenize=Sizzle.tokenize=function(selector,parseOnly){
1387var matched,match,tokens,type,
1388soFar,groups,preFilters,
1389cached=tokenCache[selector+" "];
1390if(cached){
1391return parseOnly?0:cached.slice(0);
1392}
1393soFar=selector;
1394groups=[];
1395preFilters=Expr.preFilter;
1396while(soFar){
1397if(!matched||(match=rcomma.exec(soFar))){
1398if(match){
1399soFar=soFar.slice(match[0].length)||soFar;
1400}
1401groups.push((tokens=[]));
1402}
1403matched=false;
1404if((match=rleadingCombinator.exec(soFar))){
1405matched=match.shift();
1406tokens.push({
1407value:matched,
1408type:match[0].replace(rtrim," ")
1409});
1410soFar=soFar.slice(matched.length);
1411}
1412for(type in Expr.filter){
1413if((match=matchExpr[type].exec(soFar))&&(!preFilters[type]||
1414(match=preFilters[type](match)))){
1415matched=match.shift();
1416tokens.push({
1417value:matched,
1418type:type,
1419matches:match
1420});
1421soFar=soFar.slice(matched.length);
1422}
1423}
1424if(!matched){
1425break;
1426}
1427}
1428return parseOnly?
1429soFar.length:
1430soFar?
1431Sizzle.error(selector):
1432tokenCache(selector,groups).slice(0);
1433};
1434function toSelector(tokens){
1435var i=0,
1436len=tokens.length,
1437selector="";
1438for(;i<len;i++){
1439selector+=tokens[i].value;
1440}
1441return selector;
1442}
1443function addCombinator(matcher,combinator,base){
1444var dir=combinator.dir,
1445skip=combinator.next,
1446key=skip||dir,
1447checkNonElements=base&&key==="parentNode",
1448doneName=done++;
1449return combinator.first?
1450function(elem,context,xml){
1451while((elem=elem[dir])){
1452if(elem.nodeType===1||checkNonElements){
1453return matcher(elem,context,xml);
1454}
1455}
1456return false;
1457}:
1458function(elem,context,xml){
1459var oldCache,uniqueCache,outerCache,
1460newCache=[dirruns,doneName];
1461if(xml){
1462while((elem=elem[dir])){
1463if(elem.nodeType===1||checkNonElements){
1464if(matcher(elem,context,xml)){
1465return true;
1466}
1467}
1468}
1469}else{
1470while((elem=elem[dir])){
1471if(elem.nodeType===1||checkNonElements){
1472outerCache=elem[expando]||(elem[expando]={});
1473uniqueCache=outerCache[elem.uniqueID]||
1474(outerCache[elem.uniqueID]={});
1475if(skip&&skip===elem.nodeName.toLowerCase()){
1476elem=elem[dir]||elem;
1477}else if((oldCache=uniqueCache[key])&&
1478oldCache[0]===dirruns&&oldCache[1]===doneName){
1479return(newCache[2]=oldCache[2]);
1480}else{
1481uniqueCache[key]=newCache;
1482if((newCache[2]=matcher(elem,context,xml))){
1483return true;
1484}
1485}
1486}
1487}
1488}
1489return false;
1490};
1491}
1492function elementMatcher(matchers){
1493return matchers.length>1?
1494function(elem,context,xml){
1495var i=matchers.length;
1496while(i--){
1497if(!matchers[i](elem,context,xml)){
1498return false;
1499}
1500}
1501return true;
1502}:
1503matchers[0];
1504}
1505function multipleContexts(selector,contexts,results){
1506var i=0,
1507len=contexts.length;
1508for(;i<len;i++){
1509Sizzle(selector,contexts[i],results);
1510}
1511return results;
1512}
1513function condense(unmatched,map,filter,context,xml){
1514var elem,
1515newUnmatched=[],
1516i=0,
1517len=unmatched.length,
1518mapped=map!=null;
1519for(;i<len;i++){
1520if((elem=unmatched[i])){
1521if(!filter||filter(elem,context,xml)){
1522newUnmatched.push(elem);
1523if(mapped){
1524map.push(i);
1525}
1526}
1527}
1528}
1529return newUnmatched;
1530}
1531function setMatcher(preFilter,selector,matcher,postFilter,postFinder,postSelector){
1532if(postFilter&&!postFilter[expando]){
1533postFilter=setMatcher(postFilter);
1534}
1535if(postFinder&&!postFinder[expando]){
1536postFinder=setMatcher(postFinder,postSelector);
1537}
1538return markFunction(function(seed,results,context,xml){
1539var temp,i,elem,
1540preMap=[],
1541postMap=[],
1542preexisting=results.length,
1543elems=seed||multipleContexts(
1544selector||"*",
1545context.nodeType?[context]:context,
1546[]
1547),
1548matcherIn=preFilter&&(seed||!selector)?
1549condense(elems,preMap,preFilter,context,xml):
1550elems,
1551matcherOut=matcher?
1552postFinder||(seed?preFilter:preexisting||postFilter)?
1553[]:
1554results:
1555matcherIn;
1556if(matcher){
1557matcher(matcherIn,matcherOut,context,xml);
1558}
1559if(postFilter){
1560temp=condense(matcherOut,postMap);
1561postFilter(temp,[],context,xml);
1562i=temp.length;
1563while(i--){
1564if((elem=temp[i])){
1565matcherOut[postMap[i]]=!(matcherIn[postMap[i]]=elem);
1566}
1567}
1568}
1569if(seed){
1570if(postFinder||preFilter){
1571if(postFinder){
1572temp=[];
1573i=matcherOut.length;
1574while(i--){
1575if((elem=matcherOut[i])){
1576temp.push((matcherIn[i]=elem));
1577}
1578}
1579postFinder(null,(matcherOut=[]),temp,xml);
1580}
1581i=matcherOut.length;
1582while(i--){
1583if((elem=matcherOut[i])&&
1584(temp=postFinder?indexOf(seed,elem):preMap[i])>-1){
1585seed[temp]=!(results[temp]=elem);
1586}
1587}
1588}
1589}else{
1590matcherOut=condense(
1591matcherOut===results?
1592matcherOut.splice(preexisting,matcherOut.length):
1593matcherOut
1594);
1595if(postFinder){
1596postFinder(null,results,matcherOut,xml);
1597}else{
1598push.apply(results,matcherOut);
1599}
1600}
1601});
1602}
1603function matcherFromTokens(tokens){
1604var checkContext,matcher,j,
1605len=tokens.length,
1606leadingRelative=Expr.relative[tokens[0].type],
1607implicitRelative=leadingRelative||Expr.relative[" "],
1608i=leadingRelative?1:0,
1609matchContext=addCombinator(function(elem){
1610return elem===checkContext;
1611},implicitRelative,true),
1612matchAnyContext=addCombinator(function(elem){
1613return indexOf(checkContext,elem)>-1;
1614},implicitRelative,true),
1615matchers=[function(elem,context,xml){
1616var ret=(!leadingRelative&&(xml||context!==outermostContext))||(
1617(checkContext=context).nodeType?
1618matchContext(elem,context,xml):
1619matchAnyContext(elem,context,xml));
1620checkContext=null;
1621return ret;
1622}];
1623for(;i<len;i++){
1624if((matcher=Expr.relative[tokens[i].type])){
1625matchers=[addCombinator(elementMatcher(matchers),matcher)];
1626}else{
1627matcher=Expr.filter[tokens[i].type].apply(null,tokens[i].matches);
1628if(matcher[expando]){
1629j=++i;
1630for(;j<len;j++){
1631if(Expr.relative[tokens[j].type]){
1632break;
1633}
1634}
1635return setMatcher(
1636i>1&&elementMatcher(matchers),
1637i>1&&toSelector(
1638tokens
1639.slice(0,i-1)
1640.concat({value:tokens[i-2].type===" "?"*":""})
1641).replace(rtrim,"$1"),
1642matcher,
1643i<j&&matcherFromTokens(tokens.slice(i,j)),
1644j<len&&matcherFromTokens((tokens=tokens.slice(j))),
1645j<len&&toSelector(tokens)
1646);
1647}
1648matchers.push(matcher);
1649}
1650}
1651return elementMatcher(matchers);
1652}
1653function matcherFromGroupMatchers(elementMatchers,setMatchers){
1654var bySet=setMatchers.length>0,
1655byElement=elementMatchers.length>0,
1656superMatcher=function(seed,context,xml,results,outermost){
1657var elem,j,matcher,
1658matchedCount=0,
1659i="0",
1660unmatched=seed&&[],
1661setMatched=[],
1662contextBackup=outermostContext,
1663elems=seed||byElement&&Expr.find["TAG"]("*",outermost),
1664dirrunsUnique=(dirruns+=contextBackup==null?1:Math.random()||0.1),
1665len=elems.length;
1666if(outermost){
1667outermostContext=context==document||context||outermost;
1668}
1669for(;i!==len&&(elem=elems[i])!=null;i++){
1670if(byElement&&elem){
1671j=0;
1672if(!context&&elem.ownerDocument!=document){
1673setDocument(elem);
1674xml=!documentIsHTML;
1675}
1676while((matcher=elementMatchers[j++])){
1677if(matcher(elem,context||document,xml)){
1678results.push(elem);
1679break;
1680}
1681}
1682if(outermost){
1683dirruns=dirrunsUnique;
1684}
1685}
1686if(bySet){
1687if((elem=!matcher&&elem)){
1688matchedCount--;
1689}
1690if(seed){
1691unmatched.push(elem);
1692}
1693}
1694}
1695matchedCount+=i;
1696if(bySet&&i!==matchedCount){
1697j=0;
1698while((matcher=setMatchers[j++])){
1699matcher(unmatched,setMatched,context,xml);
1700}
1701if(seed){
1702if(matchedCount>0){
1703while(i--){
1704if(!(unmatched[i]||setMatched[i])){
1705setMatched[i]=pop.call(results);
1706}
1707}
1708}
1709setMatched=condense(setMatched);
1710}
1711push.apply(results,setMatched);
1712if(outermost&&!seed&&setMatched.length>0&&
1713(matchedCount+setMatchers.length)>1){
1714Sizzle.uniqueSort(results);
1715}
1716}
1717if(outermost){
1718dirruns=dirrunsUnique;
1719outermostContext=contextBackup;
1720}
1721return unmatched;
1722};
1723return bySet?
1724markFunction(superMatcher):
1725superMatcher;
1726}
1727compile=Sizzle.compile=function(selector,match){
1728var i,
1729setMatchers=[],
1730elementMatchers=[],
1731cached=compilerCache[selector+" "];
1732if(!cached){
1733if(!match){
1734match=tokenize(selector);
1735}
1736i=match.length;
1737while(i--){
1738cached=matcherFromTokens(match[i]);
1739if(cached[expando]){
1740setMatchers.push(cached);
1741}else{
1742elementMatchers.push(cached);
1743}
1744}
1745cached=compilerCache(
1746selector,
1747matcherFromGroupMatchers(elementMatchers,setMatchers)
1748);
1749cached.selector=selector;
1750}
1751return cached;
1752};
1753select=Sizzle.select=function(selector,context,results,seed){
1754var i,tokens,token,type,find,
1755compiled=typeof selector==="function"&&selector,
1756match=!seed&&tokenize((selector=compiled.selector||selector));
1757results=results||[];
1758if(match.length===1){
1759tokens=match[0]=match[0].slice(0);
1760if(tokens.length>2&&(token=tokens[0]).type==="ID"&&
1761context.nodeType===9&&documentIsHTML&&Expr.relative[tokens[1].type]){
1762context=(Expr.find["ID"](token.matches[0]
1763.replace(runescape,funescape),context)||[])[0];
1764if(!context){
1765return results;
1766}else if(compiled){
1767context=context.parentNode;
1768}
1769selector=selector.slice(tokens.shift().value.length);
1770}
1771i=matchExpr["needsContext"].test(selector)?0:tokens.length;
1772while(i--){
1773token=tokens[i];
1774if(Expr.relative[(type=token.type)]){
1775break;
1776}
1777if((find=Expr.find[type])){
1778if((seed=find(
1779token.matches[0].replace(runescape,funescape),
1780rsibling.test(tokens[0].type)&&testContext(context.parentNode)||
1781context
1782))){
1783tokens.splice(i,1);
1784selector=seed.length&&toSelector(tokens);
1785if(!selector){
1786push.apply(results,seed);
1787return results;
1788}
1789break;
1790}
1791}
1792}
1793}
1794(compiled||compile(selector,match))(
1795seed,
1796context,
1797!documentIsHTML,
1798results,
1799!context||rsibling.test(selector)&&testContext(context.parentNode)||context
1800);
1801return results;
1802};
1803support.sortStable=expando.split("").sort(sortOrder).join("")===expando;
1804support.detectDuplicates=!!hasDuplicate;
1805setDocument();
1806support.sortDetached=assert(function(el){
1807return el.compareDocumentPosition(document.createElement("fieldset"))&1;
1808});
1809if(!assert(function(el){
1810el.innerHTML="<a href='#'></a>";
1811return el.firstChild.getAttribute("href")==="#";
1812})){
1813addHandle("type|href|height|width",function(elem,name,isXML){
1814if(!isXML){
1815return elem.getAttribute(name,name.toLowerCase()==="type"?1:2);
1816}
1817});
1818}
1819if(!support.attributes||!assert(function(el){
1820el.innerHTML="<input/>";
1821el.firstChild.setAttribute("value","");
1822return el.firstChild.getAttribute("value")==="";
1823})){
1824addHandle("value",function(elem,_name,isXML){
1825if(!isXML&&elem.nodeName.toLowerCase()==="input"){
1826return elem.defaultValue;
1827}
1828});
1829}
1830if(!assert(function(el){
1831return el.getAttribute("disabled")==null;
1832})){
1833addHandle(booleans,function(elem,name,isXML){
1834var val;
1835if(!isXML){
1836return elem[name]===true?name.toLowerCase():
1837(val=elem.getAttributeNode(name))&&val.specified?
1838val.value:
1839null;
1840}
1841});
1842}
1843return Sizzle;
1844})(window);
1845jQuery.find=Sizzle;
1846jQuery.expr=Sizzle.selectors;
1847jQuery.expr[":"]=jQuery.expr.pseudos;
1848jQuery.uniqueSort=jQuery.unique=Sizzle.uniqueSort;
1849jQuery.text=Sizzle.getText;
1850jQuery.isXMLDoc=Sizzle.isXML;
1851jQuery.contains=Sizzle.contains;
1852jQuery.escapeSelector=Sizzle.escape;
1853var dir=function(elem,dir,until){
1854var matched=[],
1855truncate=until!==undefined;
1856while((elem=elem[dir])&&elem.nodeType!==9){
1857if(elem.nodeType===1){
1858if(truncate&&jQuery(elem).is(until)){
1859break;
1860}
1861matched.push(elem);
1862}
1863}
1864return matched;
1865};
1866var siblings=function(n,elem){
1867var matched=[];
1868for(;n;n=n.nextSibling){
1869if(n.nodeType===1&&n!==elem){
1870matched.push(n);
1871}
1872}
1873return matched;
1874};
1875var rneedsContext=jQuery.expr.match.needsContext;
1876function nodeName(elem,name){
1877return elem.nodeName&&elem.nodeName.toLowerCase()===name.toLowerCase();
1878}
1879var rsingleTag=(/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i);
1880function winnow(elements,qualifier,not){
1881if(isFunction(qualifier)){
1882return jQuery.grep(elements,function(elem,i){
1883return!!qualifier.call(elem,i,elem)!==not;
1884});
1885}
1886if(qualifier.nodeType){
1887return jQuery.grep(elements,function(elem){
1888return(elem===qualifier)!==not;
1889});
1890}
1891if(typeof qualifier!=="string"){
1892return jQuery.grep(elements,function(elem){
1893return(indexOf.call(qualifier,elem)>-1)!==not;
1894});
1895}
1896return jQuery.filter(qualifier,elements,not);
1897}
1898jQuery.filter=function(expr,elems,not){
1899var elem=elems[0];
1900if(not){
1901expr=":not("+expr+")";
1902}
1903if(elems.length===1&&elem.nodeType===1){
1904return jQuery.find.matchesSelector(elem,expr)?[elem]:[];
1905}
1906return jQuery.find.matches(expr,jQuery.grep(elems,function(elem){
1907return elem.nodeType===1;
1908}));
1909};
1910jQuery.fn.extend({
1911find:function(selector){
1912var i,ret,
1913len=this.length,
1914self=this;
1915if(typeof selector!=="string"){
1916return this.pushStack(jQuery(selector).filter(function(){
1917for(i=0;i<len;i++){
1918if(jQuery.contains(self[i],this)){
1919return true;
1920}
1921}
1922}));
1923}
1924ret=this.pushStack([]);
1925for(i=0;i<len;i++){
1926jQuery.find(selector,self[i],ret);
1927}
1928return len>1?jQuery.uniqueSort(ret):ret;
1929},
1930filter:function(selector){
1931return this.pushStack(winnow(this,selector||[],false));
1932},
1933not:function(selector){
1934return this.pushStack(winnow(this,selector||[],true));
1935},
1936is:function(selector){
1937return!!winnow(
1938this,
1939typeof selector==="string"&&rneedsContext.test(selector)?
1940jQuery(selector):
1941selector||[],
1942false
1943).length;
1944}
1945});
1946var rootjQuery,
1947rquickExpr=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,
1948init=jQuery.fn.init=function(selector,context,root){
1949var match,elem;
1950if(!selector){
1951return this;
1952}
1953root=root||rootjQuery;
1954if(typeof selector==="string"){
1955if(selector[0]==="<"&&
1956selector[selector.length-1]===">"&&
1957selector.length>=3){
1958match=[null,selector,null];
1959}else{
1960match=rquickExpr.exec(selector);
1961}
1962if(match&&(match[1]||!context)){
1963if(match[1]){
1964context=context instanceof jQuery?context[0]:context;
1965jQuery.merge(this,jQuery.parseHTML(
1966match[1],
1967context&&context.nodeType?context.ownerDocument||context:document,
1968true
1969));
1970if(rsingleTag.test(match[1])&&jQuery.isPlainObject(context)){
1971for(match in context){
1972if(isFunction(this[match])){
1973this[match](context[match]);
1974}else{
1975this.attr(match,context[match]);
1976}
1977}
1978}
1979return this;
1980}else{
1981elem=document.getElementById(match[2]);
1982if(elem){
1983this[0]=elem;
1984this.length=1;
1985}
1986return this;
1987}
1988}else if(!context||context.jquery){
1989return(context||root).find(selector);
1990}else{
1991return this.constructor(context).find(selector);
1992}
1993}else if(selector.nodeType){
1994this[0]=selector;
1995this.length=1;
1996return this;
1997}else if(isFunction(selector)){
1998return root.ready!==undefined?
1999root.ready(selector):
2000selector(jQuery);
2001}
2002return jQuery.makeArray(selector,this);
2003};
2004init.prototype=jQuery.fn;
2005rootjQuery=jQuery(document);
2006var rparentsprev=/^(?:parents|prev(?:Until|All))/,
2007guaranteedUnique={
2008children:true,
2009contents:true,
2010next:true,
2011prev:true
2012};
2013jQuery.fn.extend({
2014has:function(target){
2015var targets=jQuery(target,this),
2016l=targets.length;
2017return this.filter(function(){
2018var i=0;
2019for(;i<l;i++){
2020if(jQuery.contains(this,targets[i])){
2021return true;
2022}
2023}
2024});
2025},
2026closest:function(selectors,context){
2027var cur,
2028i=0,
2029l=this.length,
2030matched=[],
2031targets=typeof selectors!=="string"&&jQuery(selectors);
2032if(!rneedsContext.test(selectors)){
2033for(;i<l;i++){
2034for(cur=this[i];cur&&cur!==context;cur=cur.parentNode){
2035if(cur.nodeType<11&&(targets?
2036targets.index(cur)>-1:
2037cur.nodeType===1&&
2038jQuery.find.matchesSelector(cur,selectors))){
2039matched.push(cur);
2040break;
2041}
2042}
2043}
2044}
2045return this.pushStack(matched.length>1?jQuery.uniqueSort(matched):matched);
2046},
2047index:function(elem){
2048if(!elem){
2049return(this[0]&&this[0].parentNode)?this.first().prevAll().length:-1;
2050}
2051if(typeof elem==="string"){
2052return indexOf.call(jQuery(elem),this[0]);
2053}
2054return indexOf.call(this,
2055elem.jquery?elem[0]:elem
2056);
2057},
2058add:function(selector,context){
2059return this.pushStack(
2060jQuery.uniqueSort(
2061jQuery.merge(this.get(),jQuery(selector,context))
2062)
2063);
2064},
2065addBack:function(selector){
2066return this.add(selector==null?
2067this.prevObject:this.prevObject.filter(selector)
2068);
2069}
2070});
2071function sibling(cur,dir){
2072while((cur=cur[dir])&&cur.nodeType!==1){}
2073return cur;
2074}
2075jQuery.each({
2076parent:function(elem){
2077var parent=elem.parentNode;
2078return parent&&parent.nodeType!==11?parent:null;
2079},
2080parents:function(elem){
2081return dir(elem,"parentNode");
2082},
2083parentsUntil:function(elem,_i,until){
2084return dir(elem,"parentNode",until);
2085},
2086next:function(elem){
2087return sibling(elem,"nextSibling");
2088},
2089prev:function(elem){
2090return sibling(elem,"previousSibling");
2091},
2092nextAll:function(elem){
2093return dir(elem,"nextSibling");
2094},
2095prevAll:function(elem){
2096return dir(elem,"previousSibling");
2097},
2098nextUntil:function(elem,_i,until){
2099return dir(elem,"nextSibling",until);
2100},
2101prevUntil:function(elem,_i,until){
2102return dir(elem,"previousSibling",until);
2103},
2104siblings:function(elem){
2105return siblings((elem.parentNode||{}).firstChild,elem);
2106},
2107children:function(elem){
2108return siblings(elem.firstChild);
2109},
2110contents:function(elem){
2111if(elem.contentDocument!=null&&
2112getProto(elem.contentDocument)){
2113return elem.contentDocument;
2114}
2115if(nodeName(elem,"template")){
2116elem=elem.content||elem;
2117}
2118return jQuery.merge([],elem.childNodes);
2119}
2120},function(name,fn){
2121jQuery.fn[name]=function(until,selector){
2122var matched=jQuery.map(this,fn,until);
2123if(name.slice(-5)!=="Until"){
2124selector=until;
2125}
2126if(selector&&typeof selector==="string"){
2127matched=jQuery.filter(selector,matched);
2128}
2129if(this.length>1){
2130if(!guaranteedUnique[name]){
2131jQuery.uniqueSort(matched);
2132}
2133if(rparentsprev.test(name)){
2134matched.reverse();
2135}
2136}
2137return this.pushStack(matched);
2138};
2139});
2140var rnothtmlwhite=(/[^\x20\t\r\n\f]+/g);
2141function createOptions(options){
2142var object={};
2143jQuery.each(options.match(rnothtmlwhite)||[],function(_,flag){
2144object[flag]=true;
2145});
2146return object;
2147}
2148jQuery.Callbacks=function(options){
2149options=typeof options==="string"?
2150createOptions(options):
2151jQuery.extend({},options);
2152var
2153firing,
2154memory,
2155fired,
vendor: 28,642 bytes, lines 2156-3544
2156locked,
2157list=[],
2158queue=[],
2159firingIndex=-1,
2160fire=function(){
2161locked=locked||options.once;
2162fired=firing=true;
2163for(;queue.length;firingIndex=-1){
2164memory=queue.shift();
2165while(++firingIndex<list.length){
2166if(list[firingIndex].apply(memory[0],memory[1])===false&&
2167options.stopOnFalse){
2168firingIndex=list.length;
2169memory=false;
2170}
2171}
2172}
2173if(!options.memory){
2174memory=false;
2175}
2176firing=false;
2177if(locked){
2178if(memory){
2179list=[];
2180}else{
2181list="";
2182}
2183}
2184},
2185self={
2186add:function(){
2187if(list){
2188if(memory&&!firing){
2189firingIndex=list.length-1;
2190queue.push(memory);
2191}
2192(function add(args){
2193jQuery.each(args,function(_,arg){
2194if(isFunction(arg)){
2195if(!options.unique||!self.has(arg)){
2196list.push(arg);
2197}
2198}else if(arg&&arg.length&&toType(arg)!=="string"){
2199add(arg);
2200}
2201});
2202})(arguments);
2203if(memory&&!firing){
2204fire();
2205}
2206}
2207return this;
2208},
2209remove:function(){
2210jQuery.each(arguments,function(_,arg){
2211var index;
2212while((index=jQuery.inArray(arg,list,index))>-1){
2213list.splice(index,1);
2214if(index<=firingIndex){
2215firingIndex--;
2216}
2217}
2218});
2219return this;
2220},
2221has:function(fn){
2222return fn?
2223jQuery.inArray(fn,list)>-1:
2224list.length>0;
2225},
2226empty:function(){
2227if(list){
2228list=[];
2229}
2230return this;
2231},
2232disable:function(){
2233locked=queue=[];
2234list=memory="";
2235return this;
2236},
2237disabled:function(){
2238return!list;
2239},
2240lock:function(){
2241locked=queue=[];
2242if(!memory&&!firing){
2243list=memory="";
2244}
2245return this;
2246},
2247locked:function(){
2248return!!locked;
2249},
2250fireWith:function(context,args){
2251if(!locked){
2252args=args||[];
2253args=[context,args.slice?args.slice():args];
2254queue.push(args);
2255if(!firing){
2256fire();
2257}
2258}
2259return this;
2260},
2261fire:function(){
2262self.fireWith(this,arguments);
2263return this;
2264},
2265fired:function(){
2266return!!fired;
2267}
2268};
2269return self;
2270};
2271function Identity(v){
2272return v;
2273}
2274function Thrower(ex){
2275throw ex;
2276}
2277function adoptValue(value,resolve,reject,noValue){
2278var method;
2279try{
2280if(value&&isFunction((method=value.promise))){
2281method.call(value).done(resolve).fail(reject);
2282}else if(value&&isFunction((method=value.then))){
2283method.call(value,resolve,reject);
2284}else{
2285resolve.apply(undefined,[value].slice(noValue));
2286}
2287}catch(value){
2288reject.apply(undefined,[value]);
2289}
2290}
2291jQuery.extend({
2292Deferred:function(func){
2293var tuples=[
2294["notify","progress",jQuery.Callbacks("memory"),
2295jQuery.Callbacks("memory"),2],
2296["resolve","done",jQuery.Callbacks("once memory"),
2297jQuery.Callbacks("once memory"),0,"resolved"],
2298["reject","fail",jQuery.Callbacks("once memory"),
2299jQuery.Callbacks("once memory"),1,"rejected"]
2300],
2301state="pending",
2302promise={
2303state:function(){
2304return state;
2305},
2306always:function(){
2307deferred.done(arguments).fail(arguments);
2308return this;
2309},
2310"catch":function(fn){
2311return promise.then(null,fn);
2312},
2313pipe:function(){
2314var fns=arguments;
2315return jQuery.Deferred(function(newDefer){
2316jQuery.each(tuples,function(_i,tuple){
2317var fn=isFunction(fns[tuple[4]])&&fns[tuple[4]];
2318deferred[tuple[1]](function(){
2319var returned=fn&&fn.apply(this,arguments);
2320if(returned&&isFunction(returned.promise)){
2321returned.promise()
2322.progress(newDefer.notify)
2323.done(newDefer.resolve)
2324.fail(newDefer.reject);
2325}else{
2326newDefer[tuple[0]+"With"](
2327this,
2328fn?[returned]:arguments
2329);
2330}
2331});
2332});
2333fns=null;
2334}).promise();
2335},
2336then:function(onFulfilled,onRejected,onProgress){
2337var maxDepth=0;
2338function resolve(depth,deferred,handler,special){
2339return function(){
2340var that=this,
2341args=arguments,
2342mightThrow=function(){
2343var returned,then;
2344if(depth<maxDepth){
2345return;
2346}
2347returned=handler.apply(that,args);
2348if(returned===deferred.promise()){
2349throw new TypeError("Thenable self-resolution");
2350}
2351then=returned&&
2352(typeof returned==="object"||
2353typeof returned==="function")&&
2354returned.then;
2355if(isFunction(then)){
2356if(special){
2357then.call(
2358returned,
2359resolve(maxDepth,deferred,Identity,special),
2360resolve(maxDepth,deferred,Thrower,special)
2361);
2362}else{
2363maxDepth++;
2364then.call(
2365returned,
2366resolve(maxDepth,deferred,Identity,special),
2367resolve(maxDepth,deferred,Thrower,special),
2368resolve(maxDepth,deferred,Identity,
2369deferred.notifyWith)
2370);
2371}
2372}else{
2373if(handler!==Identity){
2374that=undefined;
2375args=[returned];
2376}
2377(special||deferred.resolveWith)(that,args);
2378}
2379},
2380process=special?
2381mightThrow:
2382function(){
2383try{
2384mightThrow();
2385}catch(e){
2386if(jQuery.Deferred.exceptionHook){
2387jQuery.Deferred.exceptionHook(e,
2388process.stackTrace);
2389}
2390if(depth+1>=maxDepth){
2391if(handler!==Thrower){
2392that=undefined;
2393args=[e];
2394}
2395deferred.rejectWith(that,args);
2396}
2397}
2398};
2399if(depth){
2400process();
2401}else{
2402if(jQuery.Deferred.getStackHook){
2403process.stackTrace=jQuery.Deferred.getStackHook();
2404}
2405window.setTimeout(process);
2406}
2407};
2408}
2409return jQuery.Deferred(function(newDefer){
2410tuples[0][3].add(
2411resolve(
24120,
2413newDefer,
2414isFunction(onProgress)?
2415onProgress:
2416Identity,
2417newDefer.notifyWith
2418)
2419);
2420tuples[1][3].add(
2421resolve(
24220,
2423newDefer,
2424isFunction(onFulfilled)?
2425onFulfilled:
2426Identity
2427)
2428);
2429tuples[2][3].add(
2430resolve(
24310,
2432newDefer,
2433isFunction(onRejected)?
2434onRejected:
2435Thrower
2436)
2437);
2438}).promise();
2439},
2440promise:function(obj){
2441return obj!=null?jQuery.extend(obj,promise):promise;
2442}
2443},
2444deferred={};
2445jQuery.each(tuples,function(i,tuple){
2446var list=tuple[2],
2447stateString=tuple[5];
2448promise[tuple[1]]=list.add;
2449if(stateString){
2450list.add(
2451function(){
2452state=stateString;
2453},
2454tuples[3-i][2].disable,
2455tuples[3-i][3].disable,
2456tuples[0][2].lock,
2457tuples[0][3].lock
2458);
2459}
2460list.add(tuple[3].fire);
2461deferred[tuple[0]]=function(){
2462deferred[tuple[0]+"With"](this===deferred?undefined:this,arguments);
2463return this;
2464};
2465deferred[tuple[0]+"With"]=list.fireWith;
2466});
2467promise.promise(deferred);
2468if(func){
2469func.call(deferred,deferred);
2470}
2471return deferred;
2472},
2473when:function(singleValue){
2474var
2475remaining=arguments.length,
2476i=remaining,
2477resolveContexts=Array(i),
2478resolveValues=slice.call(arguments),
2479primary=jQuery.Deferred(),
2480updateFunc=function(i){
2481return function(value){
2482resolveContexts[i]=this;
2483resolveValues[i]=arguments.length>1?slice.call(arguments):value;
2484if(!(--remaining)){
2485primary.resolveWith(resolveContexts,resolveValues);
2486}
2487};
2488};
2489if(remaining<=1){
2490adoptValue(singleValue,primary.done(updateFunc(i)).resolve,primary.reject,
2491!remaining);
2492if(primary.state()==="pending"||
2493isFunction(resolveValues[i]&&resolveValues[i].then)){
2494return primary.then();
2495}
2496}
2497while(i--){
2498adoptValue(resolveValues[i],updateFunc(i),primary.reject);
2499}
2500return primary.promise();
2501}
2502});
2503var rerrorNames=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
2504jQuery.Deferred.exceptionHook=function(error,stack){
2505if(window.console&&window.console.warn&&error&&rerrorNames.test(error.name)){
2506window.console.warn("jQuery.Deferred exception: "+error.message,error.stack,stack);
2507}
2508};
2509jQuery.readyException=function(error){
2510window.setTimeout(function(){
2511throw error;
2512});
2513};
2514var readyList=jQuery.Deferred();
2515jQuery.fn.ready=function(fn){
2516readyList
2517.then(fn)
2518.catch(function(error){
2519jQuery.readyException(error);
2520});
2521return this;
2522};
2523jQuery.extend({
2524isReady:false,
2525readyWait:1,
2526ready:function(wait){
2527if(wait===true?--jQuery.readyWait:jQuery.isReady){
2528return;
2529}
2530jQuery.isReady=true;
2531if(wait!==true&&--jQuery.readyWait>0){
2532return;
2533}
2534readyList.resolveWith(document,[jQuery]);
2535}
2536});
2537jQuery.ready.then=readyList.then;
2538function completed(){
2539document.removeEventListener("DOMContentLoaded",completed);
2540window.removeEventListener("load",completed);
2541jQuery.ready();
2542}
2543if(document.readyState==="complete"||
2544(document.readyState!=="loading"&&!document.documentElement.doScroll)){
2545window.setTimeout(jQuery.ready);
2546}else{
2547document.addEventListener("DOMContentLoaded",completed);
2548window.addEventListener("load",completed);
2549}
2550var access=function(elems,fn,key,value,chainable,emptyGet,raw){
2551var i=0,
2552len=elems.length,
2553bulk=key==null;
2554if(toType(key)==="object"){
2555chainable=true;
2556for(i in key){
2557access(elems,fn,i,key[i],true,emptyGet,raw);
2558}
2559}else if(value!==undefined){
2560chainable=true;
2561if(!isFunction(value)){
2562raw=true;
2563}
2564if(bulk){
2565if(raw){
2566fn.call(elems,value);
2567fn=null;
2568}else{
2569bulk=fn;
2570fn=function(elem,_key,value){
2571return bulk.call(jQuery(elem),value);
2572};
2573}
2574}
2575if(fn){
2576for(;i<len;i++){
2577fn(
2578elems[i],key,raw?
2579value:
2580value.call(elems[i],i,fn(elems[i],key))
2581);
2582}
2583}
2584}
2585if(chainable){
2586return elems;
2587}
2588if(bulk){
2589return fn.call(elems);
2590}
2591return len?fn(elems[0],key):emptyGet;
2592};
2593var rmsPrefix=/^-ms-/,
2594rdashAlpha=/-([a-z])/g;
2595function fcamelCase(_all,letter){
2596return letter.toUpperCase();
2597}
2598function camelCase(string){
2599return string.replace(rmsPrefix,"ms-").replace(rdashAlpha,fcamelCase);
2600}
2601var acceptData=function(owner){
2602return owner.nodeType===1||owner.nodeType===9||!(+owner.nodeType);
2603};
2604function Data(){
2605this.expando=jQuery.expando+Data.uid++;
2606}
2607Data.uid=1;
2608Data.prototype={
2609cache:function(owner){
2610var value=owner[this.expando];
2611if(!value){
2612value={};
2613if(acceptData(owner)){
2614if(owner.nodeType){
2615owner[this.expando]=value;
2616}else{
2617Object.defineProperty(owner,this.expando,{
2618value:value,
2619configurable:true
2620});
2621}
2622}
2623}
2624return value;
2625},
2626set:function(owner,data,value){
2627var prop,
2628cache=this.cache(owner);
2629if(typeof data==="string"){
2630cache[camelCase(data)]=value;
2631}else{
2632for(prop in data){
2633cache[camelCase(prop)]=data[prop];
2634}
2635}
2636return cache;
2637},
2638get:function(owner,key){
2639return key===undefined?
2640this.cache(owner):
2641owner[this.expando]&&owner[this.expando][camelCase(key)];
2642},
2643access:function(owner,key,value){
2644if(key===undefined||
2645((key&&typeof key==="string")&&value===undefined)){
2646return this.get(owner,key);
2647}
2648this.set(owner,key,value);
2649return value!==undefined?value:key;
2650},
2651remove:function(owner,key){
2652var i,
2653cache=owner[this.expando];
2654if(cache===undefined){
2655return;
2656}
2657if(key!==undefined){
2658if(Array.isArray(key)){
2659key=key.map(camelCase);
2660}else{
2661key=camelCase(key);
2662key=key in cache?
2663[key]:
2664(key.match(rnothtmlwhite)||[]);
2665}
2666i=key.length;
2667while(i--){
2668delete cache[key[i]];
2669}
2670}
2671if(key===undefined||jQuery.isEmptyObject(cache)){
2672if(owner.nodeType){
2673owner[this.expando]=undefined;
2674}else{
2675delete owner[this.expando];
2676}
2677}
2678},
2679hasData:function(owner){
2680var cache=owner[this.expando];
2681return cache!==undefined&&!jQuery.isEmptyObject(cache);
2682}
2683};
2684var dataPriv=new Data();
2685var dataUser=new Data();
2686var rbrace=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
2687rmultiDash=/[A-Z]/g;
2688function getData(data){
2689if(data==="true"){
2690return true;
2691}
2692if(data==="false"){
2693return false;
2694}
2695if(data==="null"){
2696return null;
2697}
2698if(data===+data+""){
2699return+data;
2700}
2701if(rbrace.test(data)){
2702return JSON.parse(data);
2703}
2704return data;
2705}
2706function dataAttr(elem,key,data){
2707var name;
2708if(data===undefined&&elem.nodeType===1){
2709name="data-"+key.replace(rmultiDash,"-$&").toLowerCase();
2710data=elem.getAttribute(name);
2711if(typeof data==="string"){
2712try{
2713data=getData(data);
2714}catch(e){}
2715dataUser.set(elem,key,data);
2716}else{
2717data=undefined;
2718}
2719}
2720return data;
2721}
2722jQuery.extend({
2723hasData:function(elem){
2724return dataUser.hasData(elem)||dataPriv.hasData(elem);
2725},
2726data:function(elem,name,data){
2727return dataUser.access(elem,name,data);
2728},
2729removeData:function(elem,name){
2730dataUser.remove(elem,name);
2731},
2732_data:function(elem,name,data){
2733return dataPriv.access(elem,name,data);
2734},
2735_removeData:function(elem,name){
2736dataPriv.remove(elem,name);
2737}
2738});
2739jQuery.fn.extend({
2740data:function(key,value){
2741var i,name,data,
2742elem=this[0],
2743attrs=elem&&elem.attributes;
2744if(key===undefined){
2745if(this.length){
2746data=dataUser.get(elem);
2747if(elem.nodeType===1&&!dataPriv.get(elem,"hasDataAttrs")){
2748i=attrs.length;
2749while(i--){
2750if(attrs[i]){
2751name=attrs[i].name;
2752if(name.indexOf("data-")===0){
2753name=camelCase(name.slice(5));
2754dataAttr(elem,name,data[name]);
2755}
2756}
2757}
2758dataPriv.set(elem,"hasDataAttrs",true);
2759}
2760}
2761return data;
2762}
2763if(typeof key==="object"){
2764return this.each(function(){
2765dataUser.set(this,key);
2766});
2767}
2768return access(this,function(value){
2769var data;
2770if(elem&&value===undefined){
2771data=dataUser.get(elem,key);
2772if(data!==undefined){
2773return data;
2774}
2775data=dataAttr(elem,key);
2776if(data!==undefined){
2777return data;
2778}
2779return;
2780}
2781this.each(function(){
2782dataUser.set(this,key,value);
2783});
2784},null,value,arguments.length>1,null,true);
2785},
2786removeData:function(key){
2787return this.each(function(){
2788dataUser.remove(this,key);
2789});
2790}
2791});
2792jQuery.extend({
2793queue:function(elem,type,data){
2794var queue;
2795if(elem){
2796type=(type||"fx")+"queue";
2797queue=dataPriv.get(elem,type);
2798if(data){
2799if(!queue||Array.isArray(data)){
2800queue=dataPriv.access(elem,type,jQuery.makeArray(data));
2801}else{
2802queue.push(data);
2803}
2804}
2805return queue||[];
2806}
2807},
2808dequeue:function(elem,type){
2809type=type||"fx";
2810var queue=jQuery.queue(elem,type),
2811startLength=queue.length,
2812fn=queue.shift(),
2813hooks=jQuery._queueHooks(elem,type),
2814next=function(){
2815jQuery.dequeue(elem,type);
2816};
2817if(fn==="inprogress"){
2818fn=queue.shift();
2819startLength--;
2820}
2821if(fn){
2822if(type==="fx"){
2823queue.unshift("inprogress");
2824}
2825delete hooks.stop;
2826fn.call(elem,next,hooks);
2827}
2828if(!startLength&&hooks){
2829hooks.empty.fire();
2830}
2831},
2832_queueHooks:function(elem,type){
2833var key=type+"queueHooks";
2834return dataPriv.get(elem,key)||dataPriv.access(elem,key,{
2835empty:jQuery.Callbacks("once memory").add(function(){
2836dataPriv.remove(elem,[type+"queue",key]);
2837})
2838});
2839}
2840});
2841jQuery.fn.extend({
2842queue:function(type,data){
2843var setter=2;
2844if(typeof type!=="string"){
2845data=type;
2846type="fx";
2847setter--;
2848}
2849if(arguments.length<setter){
2850return jQuery.queue(this[0],type);
2851}
2852return data===undefined?
2853this:
2854this.each(function(){
2855var queue=jQuery.queue(this,type,data);
2856jQuery._queueHooks(this,type);
2857if(type==="fx"&&queue[0]!=="inprogress"){
2858jQuery.dequeue(this,type);
2859}
2860});
2861},
2862dequeue:function(type){
2863return this.each(function(){
2864jQuery.dequeue(this,type);
2865});
2866},
2867clearQueue:function(type){
2868return this.queue(type||"fx",[]);
2869},
2870promise:function(type,obj){
2871var tmp,
2872count=1,
2873defer=jQuery.Deferred(),
2874elements=this,
2875i=this.length,
2876resolve=function(){
2877if(!(--count)){
2878defer.resolveWith(elements,[elements]);
2879}
2880};
2881if(typeof type!=="string"){
2882obj=type;
2883type=undefined;
2884}
2885type=type||"fx";
2886while(i--){
2887tmp=dataPriv.get(elements[i],type+"queueHooks");
2888if(tmp&&tmp.empty){
2889count++;
2890tmp.empty.add(resolve);
2891}
2892}
2893resolve();
2894return defer.promise(obj);
2895}
2896});
2897var pnum=(/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/).source;
2898var rcssNum=new RegExp("^(?:([+-])=|)("+pnum+")([a-z%]*)$","i");
2899var cssExpand=["Top","Right","Bottom","Left"];
2900var documentElement=document.documentElement;
2901var isAttached=function(elem){
2902return jQuery.contains(elem.ownerDocument,elem);
2903},
2904composed={composed:true};
2905if(documentElement.getRootNode){
2906isAttached=function(elem){
2907return jQuery.contains(elem.ownerDocument,elem)||
2908elem.getRootNode(composed)===elem.ownerDocument;
2909};
2910}
2911var isHiddenWithinTree=function(elem,el){
2912elem=el||elem;
2913return elem.style.display==="none"||
2914elem.style.display===""&&
2915isAttached(elem)&&
2916jQuery.css(elem,"display")==="none";
2917};
2918function adjustCSS(elem,prop,valueParts,tween){
2919var adjusted,scale,
2920maxIterations=20,
2921currentValue=tween?
2922function(){
2923return tween.cur();
2924}:
2925function(){
2926return jQuery.css(elem,prop,"");
2927},
2928initial=currentValue(),
2929unit=valueParts&&valueParts[3]||(jQuery.cssNumber[prop]?"":"px"),
2930initialInUnit=elem.nodeType&&
2931(jQuery.cssNumber[prop]||unit!=="px"&&+initial)&&
2932rcssNum.exec(jQuery.css(elem,prop));
2933if(initialInUnit&&initialInUnit[3]!==unit){
2934initial=initial/2;
2935unit=unit||initialInUnit[3];
2936initialInUnit=+initial||1;
2937while(maxIterations--){
2938jQuery.style(elem,prop,initialInUnit+unit);
2939if((1-scale)*(1-(scale=currentValue()/initial||0.5))<=0){
2940maxIterations=0;
2941}
2942initialInUnit=initialInUnit/scale;
2943}
2944initialInUnit=initialInUnit*2;
2945jQuery.style(elem,prop,initialInUnit+unit);
2946valueParts=valueParts||[];
2947}
2948if(valueParts){
2949initialInUnit=+initialInUnit||+initial||0;
2950adjusted=valueParts[1]?
2951initialInUnit+(valueParts[1]+1)*valueParts[2]:
2952+valueParts[2];
2953if(tween){
2954tween.unit=unit;
2955tween.start=initialInUnit;
2956tween.end=adjusted;
2957}
2958}
2959return adjusted;
2960}
2961var defaultDisplayMap={};
2962function getDefaultDisplay(elem){
2963var temp,
2964doc=elem.ownerDocument,
2965nodeName=elem.nodeName,
2966display=defaultDisplayMap[nodeName];
2967if(display){
2968return display;
2969}
2970temp=doc.body.appendChild(doc.createElement(nodeName));
2971display=jQuery.css(temp,"display");
2972temp.parentNode.removeChild(temp);
2973if(display==="none"){
2974display="block";
2975}
2976defaultDisplayMap[nodeName]=display;
2977return display;
2978}
2979function showHide(elements,show){
2980var display,elem,
2981values=[],
2982index=0,
2983length=elements.length;
2984for(;index<length;index++){
2985elem=elements[index];
2986if(!elem.style){
2987continue;
2988}
2989display=elem.style.display;
2990if(show){
2991if(display==="none"){
2992values[index]=dataPriv.get(elem,"display")||null;
2993if(!values[index]){
2994elem.style.display="";
2995}
2996}
2997if(elem.style.display===""&&isHiddenWithinTree(elem)){
2998values[index]=getDefaultDisplay(elem);
2999}
3000}else{
3001if(display!=="none"){
3002values[index]="none";
3003dataPriv.set(elem,"display",display);
3004}
3005}
3006}
3007for(index=0;index<length;index++){
3008if(values[index]!=null){
3009elements[index].style.display=values[index];
3010}
3011}
3012return elements;
3013}
3014jQuery.fn.extend({
3015show:function(){
3016return showHide(this,true);
3017},
3018hide:function(){
3019return showHide(this);
3020},
3021toggle:function(state){
3022if(typeof state==="boolean"){
3023return state?this.show():this.hide();
3024}
3025return this.each(function(){
3026if(isHiddenWithinTree(this)){
3027jQuery(this).show();
3028}else{
3029jQuery(this).hide();
3030}
3031});
3032}
3033});
3034var rcheckableType=(/^(?:checkbox|radio)$/i);
3035var rtagName=(/<([a-z][^\/\0>\x20\t\r\n\f]*)/i);
3036var rscriptType=(/^$|^module$|\/(?:java|ecma)script/i);
3037(function(){
3038var fragment=document.createDocumentFragment(),
3039div=fragment.appendChild(document.createElement("div")),
3040input=document.createElement("input");
3041input.setAttribute("type","radio");
3042input.setAttribute("checked","checked");
3043input.setAttribute("name","t");
3044div.appendChild(input);
3045support.checkClone=div.cloneNode(true).cloneNode(true).lastChild.checked;
3046div.innerHTML="<textarea>x</textarea>";
3047support.noCloneChecked=!!div.cloneNode(true).lastChild.defaultValue;
3048div.innerHTML="<option></option>";
3049support.option=!!div.lastChild;
3050})();
3051var wrapMap={
3052thead:[1,"<table>","</table>"],
3053col:[2,"<table><colgroup>","</colgroup></table>"],
3054tr:[2,"<table><tbody>","</tbody></table>"],
3055td:[3,"<table><tbody><tr>","</tr></tbody></table>"],
3056_default:[0,"",""]
3057};
3058wrapMap.tbody=wrapMap.tfoot=wrapMap.colgroup=wrapMap.caption=wrapMap.thead;
3059wrapMap.th=wrapMap.td;
3060if(!support.option){
3061wrapMap.optgroup=wrapMap.option=[1,"<select multiple='multiple'>","</select>"];
3062}
3063function getAll(context,tag){
3064var ret;
3065if(typeof context.getElementsByTagName!=="undefined"){
3066ret=context.getElementsByTagName(tag||"*");
3067}else if(typeof context.querySelectorAll!=="undefined"){
3068ret=context.querySelectorAll(tag||"*");
3069}else{
3070ret=[];
3071}
3072if(tag===undefined||tag&&nodeName(context,tag)){
3073return jQuery.merge([context],ret);
3074}
3075return ret;
3076}
3077function setGlobalEval(elems,refElements){
3078var i=0,
3079l=elems.length;
3080for(;i<l;i++){
3081dataPriv.set(
3082elems[i],
3083"globalEval",
3084!refElements||dataPriv.get(refElements[i],"globalEval")
3085);
3086}
3087}
3088var rhtml=/<|&#?\w+;/;
3089function buildFragment(elems,context,scripts,selection,ignored){
3090var elem,tmp,tag,wrap,attached,j,
3091fragment=context.createDocumentFragment(),
3092nodes=[],
3093i=0,
3094l=elems.length;
3095for(;i<l;i++){
3096elem=elems[i];
3097if(elem||elem===0){
3098if(toType(elem)==="object"){
3099jQuery.merge(nodes,elem.nodeType?[elem]:elem);
3100}else if(!rhtml.test(elem)){
3101nodes.push(context.createTextNode(elem));
3102}else{
3103tmp=tmp||fragment.appendChild(context.createElement("div"));
3104tag=(rtagName.exec(elem)||["",""])[1].toLowerCase();
3105wrap=wrapMap[tag]||wrapMap._default;
3106tmp.innerHTML=wrap[1]+jQuery.htmlPrefilter(elem)+wrap[2];
3107j=wrap[0];
3108while(j--){
3109tmp=tmp.lastChild;
3110}
3111jQuery.merge(nodes,tmp.childNodes);
3112tmp=fragment.firstChild;
3113tmp.textContent="";
3114}
3115}
3116}
3117fragment.textContent="";
3118i=0;
3119while((elem=nodes[i++])){
3120if(selection&&jQuery.inArray(elem,selection)>-1){
3121if(ignored){
3122ignored.push(elem);
3123}
3124continue;
3125}
3126attached=isAttached(elem);
3127tmp=getAll(fragment.appendChild(elem),"script");
3128if(attached){
3129setGlobalEval(tmp);
3130}
3131if(scripts){
3132j=0;
3133while((elem=tmp[j++])){
3134if(rscriptType.test(elem.type||"")){
3135scripts.push(elem);
3136}
3137}
3138}
3139}
3140return fragment;
3141}
3142var rtypenamespace=/^([^.]*)(?:\.(.+)|)/;
3143function returnTrue(){
3144return true;
3145}
3146function returnFalse(){
3147return false;
3148}
3149function expectSync(elem,type){
3150return(elem===safeActiveElement())===(type==="focus");
3151}
3152function safeActiveElement(){
3153try{
3154return document.activeElement;
3155}catch(err){}
3156}
3157function on(elem,types,selector,data,fn,one){
3158var origFn,type;
3159if(typeof types==="object"){
3160if(typeof selector!=="string"){
3161data=data||selector;
3162selector=undefined;
3163}
3164for(type in types){
3165on(elem,type,selector,data,types[type],one);
3166}
3167return elem;
3168}
3169if(data==null&&fn==null){
3170fn=selector;
3171data=selector=undefined;
3172}else if(fn==null){
3173if(typeof selector==="string"){
3174fn=data;
3175data=undefined;
3176}else{
3177fn=data;
3178data=selector;
3179selector=undefined;
3180}
3181}
3182if(fn===false){
3183fn=returnFalse;
3184}else if(!fn){
3185return elem;
3186}
3187if(one===1){
3188origFn=fn;
3189fn=function(event){
3190jQuery().off(event);
3191return origFn.apply(this,arguments);
3192};
3193fn.guid=origFn.guid||(origFn.guid=jQuery.guid++);
3194}
3195return elem.each(function(){
3196jQuery.event.add(this,types,fn,data,selector);
3197});
3198}
3199jQuery.event={
3200global:{},
3201add:function(elem,types,handler,data,selector){
3202var handleObjIn,eventHandle,tmp,
3203events,t,handleObj,
3204special,handlers,type,namespaces,origType,
3205elemData=dataPriv.get(elem);
3206if(!acceptData(elem)){
3207return;
3208}
3209if(handler.handler){
3210handleObjIn=handler;
3211handler=handleObjIn.handler;
3212selector=handleObjIn.selector;
3213}
3214if(selector){
3215jQuery.find.matchesSelector(documentElement,selector);
3216}
3217if(!handler.guid){
3218handler.guid=jQuery.guid++;
3219}
3220if(!(events=elemData.events)){
3221events=elemData.events=Object.create(null);
3222}
3223if(!(eventHandle=elemData.handle)){
3224eventHandle=elemData.handle=function(e){
3225return typeof jQuery!=="undefined"&&jQuery.event.triggered!==e.type?
3226jQuery.event.dispatch.apply(elem,arguments):undefined;
3227};
3228}
3229types=(types||"").match(rnothtmlwhite)||[""];
3230t=types.length;
3231while(t--){
3232tmp=rtypenamespace.exec(types[t])||[];
3233type=origType=tmp[1];
3234namespaces=(tmp[2]||"").split(".").sort();
3235if(!type){
3236continue;
3237}
3238special=jQuery.event.special[type]||{};
3239type=(selector?special.delegateType:special.bindType)||type;
3240special=jQuery.event.special[type]||{};
3241handleObj=jQuery.extend({
3242type:type,
3243origType:origType,
3244data:data,
3245handler:handler,
3246guid:handler.guid,
3247selector:selector,
3248needsContext:selector&&jQuery.expr.match.needsContext.test(selector),
3249namespace:namespaces.join(".")
3250},handleObjIn);
3251if(!(handlers=events[type])){
3252handlers=events[type]=[];
3253handlers.delegateCount=0;
3254if(!special.setup||
3255special.setup.call(elem,data,namespaces,eventHandle)===false){
3256if(elem.addEventListener){
3257elem.addEventListener(type,eventHandle);
3258}
3259}
3260}
3261if(special.add){
3262special.add.call(elem,handleObj);
3263if(!handleObj.handler.guid){
3264handleObj.handler.guid=handler.guid;
3265}
3266}
3267if(selector){
3268handlers.splice(handlers.delegateCount++,0,handleObj);
3269}else{
3270handlers.push(handleObj);
3271}
3272jQuery.event.global[type]=true;
3273}
3274},
3275remove:function(elem,types,handler,selector,mappedTypes){
3276var j,origCount,tmp,
3277events,t,handleObj,
3278special,handlers,type,namespaces,origType,
3279elemData=dataPriv.hasData(elem)&&dataPriv.get(elem);
3280if(!elemData||!(events=elemData.events)){
3281return;
3282}
3283types=(types||"").match(rnothtmlwhite)||[""];
3284t=types.length;
3285while(t--){
3286tmp=rtypenamespace.exec(types[t])||[];
3287type=origType=tmp[1];
3288namespaces=(tmp[2]||"").split(".").sort();
3289if(!type){
3290for(type in events){
3291jQuery.event.remove(elem,type+types[t],handler,selector,true);
3292}
3293continue;
3294}
3295special=jQuery.event.special[type]||{};
3296type=(selector?special.delegateType:special.bindType)||type;
3297handlers=events[type]||[];
3298tmp=tmp[2]&&
3299new RegExp("(^|\\.)"+namespaces.join("\\.(?:.*\\.|)")+"(\\.|$)");
3300origCount=j=handlers.length;
3301while(j--){
3302handleObj=handlers[j];
3303if((mappedTypes||origType===handleObj.origType)&&
3304(!handler||handler.guid===handleObj.guid)&&
3305(!tmp||tmp.test(handleObj.namespace))&&
3306(!selector||selector===handleObj.selector||
3307selector==="**"&&handleObj.selector)){
3308handlers.splice(j,1);
3309if(handleObj.selector){
3310handlers.delegateCount--;
3311}
3312if(special.remove){
3313special.remove.call(elem,handleObj);
3314}
3315}
3316}
3317if(origCount&&!handlers.length){
3318if(!special.teardown||
3319special.teardown.call(elem,namespaces,elemData.handle)===false){
3320jQuery.removeEvent(elem,type,elemData.handle);
3321}
3322delete events[type];
3323}
3324}
3325if(jQuery.isEmptyObject(events)){
3326dataPriv.remove(elem,"handle events");
3327}
3328},
3329dispatch:function(nativeEvent){
3330var i,j,ret,matched,handleObj,handlerQueue,
3331args=new Array(arguments.length),
3332event=jQuery.event.fix(nativeEvent),
3333handlers=(
3334dataPriv.get(this,"events")||Object.create(null)
3335)[event.type]||[],
3336special=jQuery.event.special[event.type]||{};
3337args[0]=event;
3338for(i=1;i<arguments.length;i++){
3339args[i]=arguments[i];
3340}
3341event.delegateTarget=this;
3342if(special.preDispatch&&special.preDispatch.call(this,event)===false){
3343return;
3344}
3345handlerQueue=jQuery.event.handlers.call(this,event,handlers);
3346i=0;
3347while((matched=handlerQueue[i++])&&!event.isPropagationStopped()){
3348event.currentTarget=matched.elem;
3349j=0;
3350while((handleObj=matched.handlers[j++])&&
3351!event.isImmediatePropagationStopped()){
3352if(!event.rnamespace||handleObj.namespace===false||
3353event.rnamespace.test(handleObj.namespace)){
3354event.handleObj=handleObj;
3355event.data=handleObj.data;
3356ret=((jQuery.event.special[handleObj.origType]||{}).handle||
3357handleObj.handler).apply(matched.elem,args);
3358if(ret!==undefined){
3359if((event.result=ret)===false){
3360event.preventDefault();
3361event.stopPropagation();
3362}
3363}
3364}
3365}
3366}
3367if(special.postDispatch){
3368special.postDispatch.call(this,event);
3369}
3370return event.result;
3371},
3372handlers:function(event,handlers){
3373var i,handleObj,sel,matchedHandlers,matchedSelectors,
3374handlerQueue=[],
3375delegateCount=handlers.delegateCount,
3376cur=event.target;
3377if(delegateCount&&
3378cur.nodeType&&
3379!(event.type==="click"&&event.button>=1)){
3380for(;cur!==this;cur=cur.parentNode||this){
3381if(cur.nodeType===1&&!(event.type==="click"&&cur.disabled===true)){
3382matchedHandlers=[];
3383matchedSelectors={};
3384for(i=0;i<delegateCount;i++){
3385handleObj=handlers[i];
3386sel=handleObj.selector+" ";
3387if(matchedSelectors[sel]===undefined){
3388matchedSelectors[sel]=handleObj.needsContext?
3389jQuery(sel,this).index(cur)>-1:
3390jQuery.find(sel,this,null,[cur]).length;
3391}
3392if(matchedSelectors[sel]){
3393matchedHandlers.push(handleObj);
3394}
3395}
3396if(matchedHandlers.length){
3397handlerQueue.push({elem:cur,handlers:matchedHandlers});
3398}
3399}
3400}
3401}
3402cur=this;
3403if(delegateCount<handlers.length){
3404handlerQueue.push({elem:cur,handlers:handlers.slice(delegateCount)});
3405}
3406return handlerQueue;
3407},
3408addProp:function(name,hook){
3409Object.defineProperty(jQuery.Event.prototype,name,{
3410enumerable:true,
3411configurable:true,
3412get:isFunction(hook)?
3413function(){
3414if(this.originalEvent){
3415return hook(this.originalEvent);
3416}
3417}:
3418function(){
3419if(this.originalEvent){
3420return this.originalEvent[name];
3421}
3422},
3423set:function(value){
3424Object.defineProperty(this,name,{
3425enumerable:true,
3426configurable:true,
3427writable:true,
3428value:value
3429});
3430}
3431});
3432},
3433fix:function(originalEvent){
3434return originalEvent[jQuery.expando]?
3435originalEvent:
3436new jQuery.Event(originalEvent);
3437},
3438special:{
3439load:{
3440noBubble:true
3441},
3442click:{
3443setup:function(data){
3444var el=this||data;
3445if(rcheckableType.test(el.type)&&
3446el.click&&nodeName(el,"input")){
3447leverageNative(el,"click",returnTrue);
3448}
3449return false;
3450},
3451trigger:function(data){
3452var el=this||data;
3453if(rcheckableType.test(el.type)&&
3454el.click&&nodeName(el,"input")){
3455leverageNative(el,"click");
3456}
3457return true;
3458},
3459_default:function(event){
3460var target=event.target;
3461return rcheckableType.test(target.type)&&
3462target.click&&nodeName(target,"input")&&
3463dataPriv.get(target,"click")||
3464nodeName(target,"a");
3465}
3466},
3467beforeunload:{
3468postDispatch:function(event){
3469if(event.result!==undefined&&event.originalEvent){
3470event.originalEvent.returnValue=event.result;
3471}
3472}
3473}
3474}
3475};
3476function leverageNative(el,type,expectSync){
3477if(!expectSync){
3478if(dataPriv.get(el,type)===undefined){
3479jQuery.event.add(el,type,returnTrue);
3480}
3481return;
3482}
3483dataPriv.set(el,type,false);
3484jQuery.event.add(el,type,{
3485namespace:false,
3486handler:function(event){
3487var notAsync,result,
3488saved=dataPriv.get(this,type);
3489if((event.isTrigger&1)&&this[type]){
3490if(!saved.length){
3491saved=slice.call(arguments);
3492dataPriv.set(this,type,saved);
3493notAsync=expectSync(this,type);
3494this[type]();
3495result=dataPriv.get(this,type);
3496if(saved!==result||notAsync){
3497dataPriv.set(this,type,false);
3498}else{
3499result={};
3500}
3501if(saved!==result){
3502event.stopImmediatePropagation();
3503event.preventDefault();
3504return result&&result.value;
3505}
3506}else if((jQuery.event.special[type]||{}).delegateType){
3507event.stopPropagation();
3508}
3509}else if(saved.length){
3510dataPriv.set(this,type,{
3511value:jQuery.event.trigger(
3512jQuery.extend(saved[0],jQuery.Event.prototype),
3513saved.slice(1),
3514this
3515)
3516});
3517event.stopImmediatePropagation();
3518}
3519}
3520});
3521}
3522jQuery.removeEvent=function(elem,type,handle){
3523if(elem.removeEventListener){
3524elem.removeEventListener(type,handle);
3525}
3526};
3527jQuery.Event=function(src,props){
3528if(!(this instanceof jQuery.Event)){
3529return new jQuery.Event(src,props);
3530}
3531if(src&&src.type){
3532this.originalEvent=src;
3533this.type=src.type;
3534this.isDefaultPrevented=src.defaultPrevented||
3535src.defaultPrevented===undefined&&
3536src.returnValue===false?
3537returnTrue:
3538returnFalse;
3539this.target=(src.target&&src.target.nodeType===3)?
3540src.target.parentNode:
3541src.target;
3542this.currentTarget=src.currentTarget;
3543this.relatedTarget=src.relatedTarget;
3544}else{
vendor: 1,655 bytes, lines 3545-3632
3545this.type=src;
3546}
3547if(props){
3548jQuery.extend(this,props);
3549}
3550this.timeStamp=src&&src.timeStamp||Date.now();
3551this[jQuery.expando]=true;
3552};
3553jQuery.Event.prototype={
3554constructor:jQuery.Event,
3555isDefaultPrevented:returnFalse,
3556isPropagationStopped:returnFalse,
3557isImmediatePropagationStopped:returnFalse,
3558isSimulated:false,
3559preventDefault:function(){
3560var e=this.originalEvent;
3561this.isDefaultPrevented=returnTrue;
3562if(e&&!this.isSimulated){
3563e.preventDefault();
3564}
3565},
3566stopPropagation:function(){
3567var e=this.originalEvent;
3568this.isPropagationStopped=returnTrue;
3569if(e&&!this.isSimulated){
3570e.stopPropagation();
3571}
3572},
3573stopImmediatePropagation:function(){
3574var e=this.originalEvent;
3575this.isImmediatePropagationStopped=returnTrue;
3576if(e&&!this.isSimulated){
3577e.stopImmediatePropagation();
3578}
3579this.stopPropagation();
3580}
3581};
3582jQuery.each({
3583altKey:true,
3584bubbles:true,
3585cancelable:true,
3586changedTouches:true,
3587ctrlKey:true,
3588detail:true,
3589eventPhase:true,
3590metaKey:true,
3591pageX:true,
3592pageY:true,
3593shiftKey:true,
3594view:true,
3595"char":true,
3596code:true,
3597charCode:true,
3598key:true,
3599keyCode:true,
3600button:true,
3601buttons:true,
3602clientX:true,
3603clientY:true,
3604offsetX:true,
3605offsetY:true,
3606pointerId:true,
3607pointerType:true,
3608screenX:true,
3609screenY:true,
3610targetTouches:true,
3611toElement:true,
3612touches:true,
3613which:true
3614},jQuery.event.addProp);
3615jQuery.each({focus:"focusin",blur:"focusout"},function(type,delegateType){
3616jQuery.event.special[type]={
3617setup:function(){
3618leverageNative(this,type,expectSync);
3619return false;
3620},
3621trigger:function(){
3622leverageNative(this,type);
3623return true;
3624},
3625_default:function(event){
3626return dataPriv.get(event.target,type);
3627},
3628delegateType:delegateType
3629};
3630});
3631jQuery.each({
3632mouseenter:"mouseover",
vendor: 69,324 bytes, lines 3633-6776
3633mouseleave:"mouseout",
3634pointerenter:"pointerover",
3635pointerleave:"pointerout"
3636},function(orig,fix){
3637jQuery.event.special[orig]={
3638delegateType:fix,
3639bindType:fix,
3640handle:function(event){
3641var ret,
3642target=this,
3643related=event.relatedTarget,
3644handleObj=event.handleObj;
3645if(!related||(related!==target&&!jQuery.contains(target,related))){
3646event.type=handleObj.origType;
3647ret=handleObj.handler.apply(this,arguments);
3648event.type=fix;
3649}
3650return ret;
3651}
3652};
3653});
3654jQuery.fn.extend({
3655on:function(types,selector,data,fn){
3656return on(this,types,selector,data,fn);
3657},
3658one:function(types,selector,data,fn){
3659return on(this,types,selector,data,fn,1);
3660},
3661off:function(types,selector,fn){
3662var handleObj,type;
3663if(types&&types.preventDefault&&types.handleObj){
3664handleObj=types.handleObj;
3665jQuery(types.delegateTarget).off(
3666handleObj.namespace?
3667handleObj.origType+"."+handleObj.namespace:
3668handleObj.origType,
3669handleObj.selector,
3670handleObj.handler
3671);
3672return this;
3673}
3674if(typeof types==="object"){
3675for(type in types){
3676this.off(type,selector,types[type]);
3677}
3678return this;
3679}
3680if(selector===false||typeof selector==="function"){
3681fn=selector;
3682selector=undefined;
3683}
3684if(fn===false){
3685fn=returnFalse;
3686}
3687return this.each(function(){
3688jQuery.event.remove(this,types,fn,selector);
3689});
3690}
3691});
3692var
3693rnoInnerhtml=/<script|<style|<link/i,
3694rchecked=/checked\s*(?:[^=]|=\s*.checked.)/i,
3695rcleanScript=/^\s*<!\[CDATA\[|\]\]>\s*$/g;
3696function manipulationTarget(elem,content){
3697if(nodeName(elem,"table")&&
3698nodeName(content.nodeType!==11?content:content.firstChild,"tr")){
3699return jQuery(elem).children("tbody")[0]||elem;
3700}
3701return elem;
3702}
3703function disableScript(elem){
3704elem.type=(elem.getAttribute("type")!==null)+"/"+elem.type;
3705return elem;
3706}
3707function restoreScript(elem){
3708if((elem.type||"").slice(0,5)==="true/"){
3709elem.type=elem.type.slice(5);
3710}else{
3711elem.removeAttribute("type");
3712}
3713return elem;
3714}
3715function cloneCopyEvent(src,dest){
3716var i,l,type,pdataOld,udataOld,udataCur,events;
3717if(dest.nodeType!==1){
3718return;
3719}
3720if(dataPriv.hasData(src)){
3721pdataOld=dataPriv.get(src);
3722events=pdataOld.events;
3723if(events){
3724dataPriv.remove(dest,"handle events");
3725for(type in events){
3726for(i=0,l=events[type].length;i<l;i++){
3727jQuery.event.add(dest,type,events[type][i]);
3728}
3729}
3730}
3731}
3732if(dataUser.hasData(src)){
3733udataOld=dataUser.access(src);
3734udataCur=jQuery.extend({},udataOld);
3735dataUser.set(dest,udataCur);
3736}
3737}
3738function fixInput(src,dest){
3739var nodeName=dest.nodeName.toLowerCase();
3740if(nodeName==="input"&&rcheckableType.test(src.type)){
3741dest.checked=src.checked;
3742}else if(nodeName==="input"||nodeName==="textarea"){
3743dest.defaultValue=src.defaultValue;
3744}
3745}
3746function domManip(collection,args,callback,ignored){
3747args=flat(args);
3748var fragment,first,scripts,hasScripts,node,doc,
3749i=0,
3750l=collection.length,
3751iNoClone=l-1,
3752value=args[0],
3753valueIsFunction=isFunction(value);
3754if(valueIsFunction||
3755(l>1&&typeof value==="string"&&
3756!support.checkClone&&rchecked.test(value))){
3757return collection.each(function(index){
3758var self=collection.eq(index);
3759if(valueIsFunction){
3760args[0]=value.call(this,index,self.html());
3761}
3762domManip(self,args,callback,ignored);
3763});
3764}
3765if(l){
3766fragment=buildFragment(args,collection[0].ownerDocument,false,collection,ignored);
3767first=fragment.firstChild;
3768if(fragment.childNodes.length===1){
3769fragment=first;
3770}
3771if(first||ignored){
3772scripts=jQuery.map(getAll(fragment,"script"),disableScript);
3773hasScripts=scripts.length;
3774for(;i<l;i++){
3775node=fragment;
3776if(i!==iNoClone){
3777node=jQuery.clone(node,true,true);
3778if(hasScripts){
3779jQuery.merge(scripts,getAll(node,"script"));
3780}
3781}
3782callback.call(collection[i],node,i);
3783}
3784if(hasScripts){
3785doc=scripts[scripts.length-1].ownerDocument;
3786jQuery.map(scripts,restoreScript);
3787for(i=0;i<hasScripts;i++){
3788node=scripts[i];
3789if(rscriptType.test(node.type||"")&&
3790!dataPriv.access(node,"globalEval")&&
3791jQuery.contains(doc,node)){
3792if(node.src&&(node.type||"").toLowerCase()!=="module"){
3793if(jQuery._evalUrl&&!node.noModule){
3794jQuery._evalUrl(node.src,{
3795nonce:node.nonce||node.getAttribute("nonce")
3796},doc);
3797}
3798}else{
3799DOMEval(node.textContent.replace(rcleanScript,""),node,doc);
3800}
3801}
3802}
3803}
3804}
3805}
3806return collection;
3807}
3808function remove(elem,selector,keepData){
3809var node,
3810nodes=selector?jQuery.filter(selector,elem):elem,
3811i=0;
3812for(;(node=nodes[i])!=null;i++){
3813if(!keepData&&node.nodeType===1){
3814jQuery.cleanData(getAll(node));
3815}
3816if(node.parentNode){
3817if(keepData&&isAttached(node)){
3818setGlobalEval(getAll(node,"script"));
3819}
3820node.parentNode.removeChild(node);
3821}
3822}
3823return elem;
3824}
3825jQuery.extend({
3826htmlPrefilter:function(html){
3827return html;
3828},
3829clone:function(elem,dataAndEvents,deepDataAndEvents){
3830var i,l,srcElements,destElements,
3831clone=elem.cloneNode(true),
3832inPage=isAttached(elem);
3833if(!support.noCloneChecked&&(elem.nodeType===1||elem.nodeType===11)&&
3834!jQuery.isXMLDoc(elem)){
3835destElements=getAll(clone);
3836srcElements=getAll(elem);
3837for(i=0,l=srcElements.length;i<l;i++){
3838fixInput(srcElements[i],destElements[i]);
3839}
3840}
3841if(dataAndEvents){
3842if(deepDataAndEvents){
3843srcElements=srcElements||getAll(elem);
3844destElements=destElements||getAll(clone);
3845for(i=0,l=srcElements.length;i<l;i++){
3846cloneCopyEvent(srcElements[i],destElements[i]);
3847}
3848}else{
3849cloneCopyEvent(elem,clone);
3850}
3851}
3852destElements=getAll(clone,"script");
3853if(destElements.length>0){
3854setGlobalEval(destElements,!inPage&&getAll(elem,"script"));
3855}
3856return clone;
3857},
3858cleanData:function(elems){
3859var data,elem,type,
3860special=jQuery.event.special,
3861i=0;
3862for(;(elem=elems[i])!==undefined;i++){
3863if(acceptData(elem)){
3864if((data=elem[dataPriv.expando])){
3865if(data.events){
3866for(type in data.events){
3867if(special[type]){
3868jQuery.event.remove(elem,type);
3869}else{
3870jQuery.removeEvent(elem,type,data.handle);
3871}
3872}
3873}
3874elem[dataPriv.expando]=undefined;
3875}
3876if(elem[dataUser.expando]){
3877elem[dataUser.expando]=undefined;
3878}
3879}
3880}
3881}
3882});
3883jQuery.fn.extend({
3884detach:function(selector){
3885return remove(this,selector,true);
3886},
3887remove:function(selector){
3888return remove(this,selector);
3889},
3890text:function(value){
3891return access(this,function(value){
3892return value===undefined?
3893jQuery.text(this):
3894this.empty().each(function(){
3895if(this.nodeType===1||this.nodeType===11||this.nodeType===9){
3896this.textContent=value;
3897}
3898});
3899},null,value,arguments.length);
3900},
3901append:function(){
3902return domManip(this,arguments,function(elem){
3903if(this.nodeType===1||this.nodeType===11||this.nodeType===9){
3904var target=manipulationTarget(this,elem);
3905target.appendChild(elem);
3906}
3907});
3908},
3909prepend:function(){
3910return domManip(this,arguments,function(elem){
3911if(this.nodeType===1||this.nodeType===11||this.nodeType===9){
3912var target=manipulationTarget(this,elem);
3913target.insertBefore(elem,target.firstChild);
3914}
3915});
3916},
3917before:function(){
3918return domManip(this,arguments,function(elem){
3919if(this.parentNode){
3920this.parentNode.insertBefore(elem,this);
3921}
3922});
3923},
3924after:function(){
3925return domManip(this,arguments,function(elem){
3926if(this.parentNode){
3927this.parentNode.insertBefore(elem,this.nextSibling);
3928}
3929});
3930},
3931empty:function(){
3932var elem,
3933i=0;
3934for(;(elem=this[i])!=null;i++){
3935if(elem.nodeType===1){
3936jQuery.cleanData(getAll(elem,false));
3937elem.textContent="";
3938}
3939}
3940return this;
3941},
3942clone:function(dataAndEvents,deepDataAndEvents){
3943dataAndEvents=dataAndEvents==null?false:dataAndEvents;
3944deepDataAndEvents=deepDataAndEvents==null?dataAndEvents:deepDataAndEvents;
3945return this.map(function(){
3946return jQuery.clone(this,dataAndEvents,deepDataAndEvents);
3947});
3948},
3949html:function(value){
3950return access(this,function(value){
3951var elem=this[0]||{},
3952i=0,
3953l=this.length;
3954if(value===undefined&&elem.nodeType===1){
3955return elem.innerHTML;
3956}
3957if(typeof value==="string"&&!rnoInnerhtml.test(value)&&
3958!wrapMap[(rtagName.exec(value)||["",""])[1].toLowerCase()]){
3959value=jQuery.htmlPrefilter(value);
3960try{
3961for(;i<l;i++){
3962elem=this[i]||{};
3963if(elem.nodeType===1){
3964jQuery.cleanData(getAll(elem,false));
3965elem.innerHTML=value;
3966}
3967}
3968elem=0;
3969}catch(e){}
3970}
3971if(elem){
3972this.empty().append(value);
3973}
3974},null,value,arguments.length);
3975},
3976replaceWith:function(){
3977var ignored=[];
3978return domManip(this,arguments,function(elem){
3979var parent=this.parentNode;
3980if(jQuery.inArray(this,ignored)<0){
3981jQuery.cleanData(getAll(this));
3982if(parent){
3983parent.replaceChild(elem,this);
3984}
3985}
3986},ignored);
3987}
3988});
3989jQuery.each({
3990appendTo:"append",
3991prependTo:"prepend",
3992insertBefore:"before",
3993insertAfter:"after",
3994replaceAll:"replaceWith"
3995},function(name,original){
3996jQuery.fn[name]=function(selector){
3997var elems,
3998ret=[],
3999insert=jQuery(selector),
4000last=insert.length-1,
4001i=0;
4002for(;i<=last;i++){
4003elems=i===last?this:this.clone(true);
4004jQuery(insert[i])[original](elems);
4005push.apply(ret,elems.get());
4006}
4007return this.pushStack(ret);
4008};
4009});
4010var rnumnonpx=new RegExp("^("+pnum+")(?!px)[a-z%]+$","i");
4011var rcustomProp=/^--/;
4012var getStyles=function(elem){
4013var view=elem.ownerDocument.defaultView;
4014if(!view||!view.opener){
4015view=window;
4016}
4017return view.getComputedStyle(elem);
4018};
4019var swap=function(elem,options,callback){
4020var ret,name,
4021old={};
4022for(name in options){
4023old[name]=elem.style[name];
4024elem.style[name]=options[name];
4025}
4026ret=callback.call(elem);
4027for(name in options){
4028elem.style[name]=old[name];
4029}
4030return ret;
4031};
4032var rboxStyle=new RegExp(cssExpand.join("|"),"i");
4033var whitespace="[\\x20\\t\\r\\n\\f]";
4034var rtrimCSS=new RegExp(
4035"^"+whitespace+"+|((?:^|[^\\\\])(?:\\\\.)*)"+whitespace+"+$",
4036"g"
4037);
4038(function(){
4039function computeStyleTests(){
4040if(!div){
4041return;
4042}
4043container.style.cssText="position:absolute;left:-11111px;width:60px;"+
4044"margin-top:1px;padding:0;border:0";
4045div.style.cssText=
4046"position:relative;display:block;box-sizing:border-box;overflow:scroll;"+
4047"margin:auto;border:1px;padding:1px;"+
4048"width:60%;top:1%";
4049documentElement.appendChild(container).appendChild(div);
4050var divStyle=window.getComputedStyle(div);
4051pixelPositionVal=divStyle.top!=="1%";
4052reliableMarginLeftVal=roundPixelMeasures(divStyle.marginLeft)===12;
4053div.style.right="60%";
4054pixelBoxStylesVal=roundPixelMeasures(divStyle.right)===36;
4055boxSizingReliableVal=roundPixelMeasures(divStyle.width)===36;
4056div.style.position="absolute";
4057scrollboxSizeVal=roundPixelMeasures(div.offsetWidth/3)===12;
4058documentElement.removeChild(container);
4059div=null;
4060}
4061function roundPixelMeasures(measure){
4062return Math.round(parseFloat(measure));
4063}
4064var pixelPositionVal,boxSizingReliableVal,scrollboxSizeVal,pixelBoxStylesVal,
4065reliableTrDimensionsVal,reliableMarginLeftVal,
4066container=document.createElement("div"),
4067div=document.createElement("div");
4068if(!div.style){
4069return;
4070}
4071div.style.backgroundClip="content-box";
4072div.cloneNode(true).style.backgroundClip="";
4073support.clearCloneStyle=div.style.backgroundClip==="content-box";
4074jQuery.extend(support,{
4075boxSizingReliable:function(){
4076computeStyleTests();
4077return boxSizingReliableVal;
4078},
4079pixelBoxStyles:function(){
4080computeStyleTests();
4081return pixelBoxStylesVal;
4082},
4083pixelPosition:function(){
4084computeStyleTests();
4085return pixelPositionVal;
4086},
4087reliableMarginLeft:function(){
4088computeStyleTests();
4089return reliableMarginLeftVal;
4090},
4091scrollboxSize:function(){
4092computeStyleTests();
4093return scrollboxSizeVal;
4094},
4095reliableTrDimensions:function(){
4096var table,tr,trChild,trStyle;
4097if(reliableTrDimensionsVal==null){
4098table=document.createElement("table");
4099tr=document.createElement("tr");
4100trChild=document.createElement("div");
4101table.style.cssText="position:absolute;left:-11111px;border-collapse:separate";
4102tr.style.cssText="border:1px solid";
4103tr.style.height="1px";
4104trChild.style.height="9px";
4105trChild.style.display="block";
4106documentElement
4107.appendChild(table)
4108.appendChild(tr)
4109.appendChild(trChild);
4110trStyle=window.getComputedStyle(tr);
4111reliableTrDimensionsVal=(parseInt(trStyle.height,10)+
4112parseInt(trStyle.borderTopWidth,10)+
4113parseInt(trStyle.borderBottomWidth,10))===tr.offsetHeight;
4114documentElement.removeChild(table);
4115}
4116return reliableTrDimensionsVal;
4117}
4118});
4119})();
4120function curCSS(elem,name,computed){
4121var width,minWidth,maxWidth,ret,
4122isCustomProp=rcustomProp.test(name),
4123style=elem.style;
4124computed=computed||getStyles(elem);
4125if(computed){
4126ret=computed.getPropertyValue(name)||computed[name];
4127if(isCustomProp&&ret){
4128ret=ret.replace(rtrimCSS,"$1")||undefined;
4129}
4130if(ret===""&&!isAttached(elem)){
4131ret=jQuery.style(elem,name);
4132}
4133if(!support.pixelBoxStyles()&&rnumnonpx.test(ret)&&rboxStyle.test(name)){
4134width=style.width;
4135minWidth=style.minWidth;
4136maxWidth=style.maxWidth;
4137style.minWidth=style.maxWidth=style.width=ret;
4138ret=computed.width;
4139style.width=width;
4140style.minWidth=minWidth;
4141style.maxWidth=maxWidth;
4142}
4143}
4144return ret!==undefined?
4145ret+"":
4146ret;
4147}
4148function addGetHookIf(conditionFn,hookFn){
4149return{
4150get:function(){
4151if(conditionFn()){
4152delete this.get;
4153return;
4154}
4155return(this.get=hookFn).apply(this,arguments);
4156}
4157};
4158}
4159var cssPrefixes=["Webkit","Moz","ms"],
4160emptyStyle=document.createElement("div").style,
4161vendorProps={};
4162function vendorPropName(name){
4163var capName=name[0].toUpperCase()+name.slice(1),
4164i=cssPrefixes.length;
4165while(i--){
4166name=cssPrefixes[i]+capName;
4167if(name in emptyStyle){
4168return name;
4169}
4170}
4171}
4172function finalPropName(name){
4173var final=jQuery.cssProps[name]||vendorProps[name];
4174if(final){
4175return final;
4176}
4177if(name in emptyStyle){
4178return name;
4179}
4180return vendorProps[name]=vendorPropName(name)||name;
4181}
4182var
4183rdisplayswap=/^(none|table(?!-c[ea]).+)/,
4184cssShow={position:"absolute",visibility:"hidden",display:"block"},
4185cssNormalTransform={
4186letterSpacing:"0",
4187fontWeight:"400"
4188};
4189function setPositiveNumber(_elem,value,subtract){
4190var matches=rcssNum.exec(value);
4191return matches?
4192Math.max(0,matches[2]-(subtract||0))+(matches[3]||"px"):
4193value;
4194}
4195function boxModelAdjustment(elem,dimension,box,isBorderBox,styles,computedVal){
4196var i=dimension==="width"?1:0,
4197extra=0,
4198delta=0;
4199if(box===(isBorderBox?"border":"content")){
4200return 0;
4201}
4202for(;i<4;i+=2){
4203if(box==="margin"){
4204delta+=jQuery.css(elem,box+cssExpand[i],true,styles);
4205}
4206if(!isBorderBox){
4207delta+=jQuery.css(elem,"padding"+cssExpand[i],true,styles);
4208if(box!=="padding"){
4209delta+=jQuery.css(elem,"border"+cssExpand[i]+"Width",true,styles);
4210}else{
4211extra+=jQuery.css(elem,"border"+cssExpand[i]+"Width",true,styles);
4212}
4213}else{
4214if(box==="content"){
4215delta-=jQuery.css(elem,"padding"+cssExpand[i],true,styles);
4216}
4217if(box!=="margin"){
4218delta-=jQuery.css(elem,"border"+cssExpand[i]+"Width",true,styles);
4219}
4220}
4221}
4222if(!isBorderBox&&computedVal>=0){
4223delta+=Math.max(0,Math.ceil(
4224elem["offset"+dimension[0].toUpperCase()+dimension.slice(1)]-
4225computedVal-
4226delta-
4227extra-
42280.5
4229))||0;
4230}
4231return delta;
4232}
4233function getWidthOrHeight(elem,dimension,extra){
4234var styles=getStyles(elem),
4235boxSizingNeeded=!support.boxSizingReliable()||extra,
4236isBorderBox=boxSizingNeeded&&
4237jQuery.css(elem,"boxSizing",false,styles)==="border-box",
4238valueIsBorderBox=isBorderBox,
4239val=curCSS(elem,dimension,styles),
4240offsetProp="offset"+dimension[0].toUpperCase()+dimension.slice(1);
4241if(rnumnonpx.test(val)){
4242if(!extra){
4243return val;
4244}
4245val="auto";
4246}
4247if((!support.boxSizingReliable()&&isBorderBox||
4248!support.reliableTrDimensions()&&nodeName(elem,"tr")||
4249val==="auto"||
4250!parseFloat(val)&&jQuery.css(elem,"display",false,styles)==="inline")&&
4251elem.getClientRects().length){
4252isBorderBox=jQuery.css(elem,"boxSizing",false,styles)==="border-box";
4253valueIsBorderBox=offsetProp in elem;
4254if(valueIsBorderBox){
4255val=elem[offsetProp];
4256}
4257}
4258val=parseFloat(val)||0;
4259return(val+
4260boxModelAdjustment(
4261elem,
4262dimension,
4263extra||(isBorderBox?"border":"content"),
4264valueIsBorderBox,
4265styles,
4266val
4267)
4268)+"px";
4269}
4270jQuery.extend({
4271cssHooks:{
4272opacity:{
4273get:function(elem,computed){
4274if(computed){
4275var ret=curCSS(elem,"opacity");
4276return ret===""?"1":ret;
4277}
4278}
4279}
4280},
4281cssNumber:{
4282"animationIterationCount":true,
4283"columnCount":true,
4284"fillOpacity":true,
4285"flexGrow":true,
4286"flexShrink":true,
4287"fontWeight":true,
4288"gridArea":true,
4289"gridColumn":true,
4290"gridColumnEnd":true,
4291"gridColumnStart":true,
4292"gridRow":true,
4293"gridRowEnd":true,
4294"gridRowStart":true,
4295"lineHeight":true,
4296"opacity":true,
4297"order":true,
4298"orphans":true,
4299"widows":true,
4300"zIndex":true,
4301"zoom":true
4302},
4303cssProps:{},
4304style:function(elem,name,value,extra){
4305if(!elem||elem.nodeType===3||elem.nodeType===8||!elem.style){
4306return;
4307}
4308var ret,type,hooks,
4309origName=camelCase(name),
4310isCustomProp=rcustomProp.test(name),
4311style=elem.style;
4312if(!isCustomProp){
4313name=finalPropName(origName);
4314}
4315hooks=jQuery.cssHooks[name]||jQuery.cssHooks[origName];
4316if(value!==undefined){
4317type=typeof value;
4318if(type==="string"&&(ret=rcssNum.exec(value))&&ret[1]){
4319value=adjustCSS(elem,name,ret);
4320type="number";
4321}
4322if(value==null||value!==value){
4323return;
4324}
4325if(type==="number"&&!isCustomProp){
4326value+=ret&&ret[3]||(jQuery.cssNumber[origName]?"":"px");
4327}
4328if(!support.clearCloneStyle&&value===""&&name.indexOf("background")===0){
4329style[name]="inherit";
4330}
4331if(!hooks||!("set"in hooks)||
4332(value=hooks.set(elem,value,extra))!==undefined){
4333if(isCustomProp){
4334style.setProperty(name,value);
4335}else{
4336style[name]=value;
4337}
4338}
4339}else{
4340if(hooks&&"get"in hooks&&
4341(ret=hooks.get(elem,false,extra))!==undefined){
4342return ret;
4343}
4344return style[name];
4345}
4346},
4347css:function(elem,name,extra,styles){
4348var val,num,hooks,
4349origName=camelCase(name),
4350isCustomProp=rcustomProp.test(name);
4351if(!isCustomProp){
4352name=finalPropName(origName);
4353}
4354hooks=jQuery.cssHooks[name]||jQuery.cssHooks[origName];
4355if(hooks&&"get"in hooks){
4356val=hooks.get(elem,true,extra);
4357}
4358if(val===undefined){
4359val=curCSS(elem,name,styles);
4360}
4361if(val==="normal"&&name in cssNormalTransform){
4362val=cssNormalTransform[name];
4363}
4364if(extra===""||extra){
4365num=parseFloat(val);
4366return extra===true||isFinite(num)?num||0:val;
4367}
4368return val;
4369}
4370});
4371jQuery.each(["height","width"],function(_i,dimension){
4372jQuery.cssHooks[dimension]={
4373get:function(elem,computed,extra){
4374if(computed){
4375return rdisplayswap.test(jQuery.css(elem,"display"))&&
4376(!elem.getClientRects().length||!elem.getBoundingClientRect().width)?
4377swap(elem,cssShow,function(){
4378return getWidthOrHeight(elem,dimension,extra);
4379}):
4380getWidthOrHeight(elem,dimension,extra);
4381}
4382},
4383set:function(elem,value,extra){
4384var matches,
4385styles=getStyles(elem),
4386scrollboxSizeBuggy=!support.scrollboxSize()&&
4387styles.position==="absolute",
4388boxSizingNeeded=scrollboxSizeBuggy||extra,
4389isBorderBox=boxSizingNeeded&&
4390jQuery.css(elem,"boxSizing",false,styles)==="border-box",
4391subtract=extra?
4392boxModelAdjustment(
4393elem,
4394dimension,
4395extra,
4396isBorderBox,
4397styles
4398):
43990;
4400if(isBorderBox&&scrollboxSizeBuggy){
4401subtract-=Math.ceil(
4402elem["offset"+dimension[0].toUpperCase()+dimension.slice(1)]-
4403parseFloat(styles[dimension])-
4404boxModelAdjustment(elem,dimension,"border",false,styles)-
44050.5
4406);
4407}
4408if(subtract&&(matches=rcssNum.exec(value))&&
4409(matches[3]||"px")!=="px"){
4410elem.style[dimension]=value;
4411value=jQuery.css(elem,dimension);
4412}
4413return setPositiveNumber(elem,value,subtract);
4414}
4415};
4416});
4417jQuery.cssHooks.marginLeft=addGetHookIf(support.reliableMarginLeft,
4418function(elem,computed){
4419if(computed){
4420return(parseFloat(curCSS(elem,"marginLeft"))||
4421elem.getBoundingClientRect().left-
4422swap(elem,{marginLeft:0},function(){
4423return elem.getBoundingClientRect().left;
4424})
4425)+"px";
4426}
4427}
4428);
4429jQuery.each({
4430margin:"",
4431padding:"",
4432border:"Width"
4433},function(prefix,suffix){
4434jQuery.cssHooks[prefix+suffix]={
4435expand:function(value){
4436var i=0,
4437expanded={},
4438parts=typeof value==="string"?value.split(" "):[value];
4439for(;i<4;i++){
4440expanded[prefix+cssExpand[i]+suffix]=
4441parts[i]||parts[i-2]||parts[0];
4442}
4443return expanded;
4444}
4445};
4446if(prefix!=="margin"){
4447jQuery.cssHooks[prefix+suffix].set=setPositiveNumber;
4448}
4449});
4450jQuery.fn.extend({
4451css:function(name,value){
4452return access(this,function(elem,name,value){
4453var styles,len,
4454map={},
4455i=0;
4456if(Array.isArray(name)){
4457styles=getStyles(elem);
4458len=name.length;
4459for(;i<len;i++){
4460map[name[i]]=jQuery.css(elem,name[i],false,styles);
4461}
4462return map;
4463}
4464return value!==undefined?
4465jQuery.style(elem,name,value):
4466jQuery.css(elem,name);
4467},name,value,arguments.length>1);
4468}
4469});
4470function Tween(elem,options,prop,end,easing){
4471return new Tween.prototype.init(elem,options,prop,end,easing);
4472}
4473jQuery.Tween=Tween;
4474Tween.prototype={
4475constructor:Tween,
4476init:function(elem,options,prop,end,easing,unit){
4477this.elem=elem;
4478this.prop=prop;
4479this.easing=easing||jQuery.easing._default;
4480this.options=options;
4481this.start=this.now=this.cur();
4482this.end=end;
4483this.unit=unit||(jQuery.cssNumber[prop]?"":"px");
4484},
4485cur:function(){
4486var hooks=Tween.propHooks[this.prop];
4487return hooks&&hooks.get?
4488hooks.get(this):
4489Tween.propHooks._default.get(this);
4490},
4491run:function(percent){
4492var eased,
4493hooks=Tween.propHooks[this.prop];
4494if(this.options.duration){
4495this.pos=eased=jQuery.easing[this.easing](
4496percent,this.options.duration*percent,0,1,this.options.duration
4497);
4498}else{
4499this.pos=eased=percent;
4500}
4501this.now=(this.end-this.start)*eased+this.start;
4502if(this.options.step){
4503this.options.step.call(this.elem,this.now,this);
4504}
4505if(hooks&&hooks.set){
4506hooks.set(this);
4507}else{
4508Tween.propHooks._default.set(this);
4509}
4510return this;
4511}
4512};
4513Tween.prototype.init.prototype=Tween.prototype;
4514Tween.propHooks={
4515_default:{
4516get:function(tween){
4517var result;
4518if(tween.elem.nodeType!==1||
4519tween.elem[tween.prop]!=null&&tween.elem.style[tween.prop]==null){
4520return tween.elem[tween.prop];
4521}
4522result=jQuery.css(tween.elem,tween.prop,"");
4523return!result||result==="auto"?0:result;
4524},
4525set:function(tween){
4526if(jQuery.fx.step[tween.prop]){
4527jQuery.fx.step[tween.prop](tween);
4528}else if(tween.elem.nodeType===1&&(
4529jQuery.cssHooks[tween.prop]||
4530tween.elem.style[finalPropName(tween.prop)]!=null)){
4531jQuery.style(tween.elem,tween.prop,tween.now+tween.unit);
4532}else{
4533tween.elem[tween.prop]=tween.now;
4534}
4535}
4536}
4537};
4538Tween.propHooks.scrollTop=Tween.propHooks.scrollLeft={
4539set:function(tween){
4540if(tween.elem.nodeType&&tween.elem.parentNode){
4541tween.elem[tween.prop]=tween.now;
4542}
4543}
4544};
4545jQuery.easing={
4546linear:function(p){
4547return p;
4548},
4549swing:function(p){
4550return 0.5-Math.cos(p*Math.PI)/2;
4551},
4552_default:"swing"
4553};
4554jQuery.fx=Tween.prototype.init;
4555jQuery.fx.step={};
4556var
4557fxNow,inProgress,
4558rfxtypes=/^(?:toggle|show|hide)$/,
4559rrun=/queueHooks$/;
4560function schedule(){
4561if(inProgress){
4562if(document.hidden===false&&window.requestAnimationFrame){
4563window.requestAnimationFrame(schedule);
4564}else{
4565window.setTimeout(schedule,jQuery.fx.interval);
4566}
4567jQuery.fx.tick();
4568}
4569}
4570function createFxNow(){
4571window.setTimeout(function(){
4572fxNow=undefined;
4573});
4574return(fxNow=Date.now());
4575}
4576function genFx(type,includeWidth){
4577var which,
4578i=0,
4579attrs={height:type};
4580includeWidth=includeWidth?1:0;
4581for(;i<4;i+=2-includeWidth){
4582which=cssExpand[i];
4583attrs["margin"+which]=attrs["padding"+which]=type;
4584}
4585if(includeWidth){
4586attrs.opacity=attrs.width=type;
4587}
4588return attrs;
4589}
4590function createTween(value,prop,animation){
4591var tween,
4592collection=(Animation.tweeners[prop]||[]).concat(Animation.tweeners["*"]),
4593index=0,
4594length=collection.length;
4595for(;index<length;index++){
4596if((tween=collection[index].call(animation,prop,value))){
4597return tween;
4598}
4599}
4600}
4601function defaultPrefilter(elem,props,opts){
4602var prop,value,toggle,hooks,oldfire,propTween,restoreDisplay,display,
4603isBox="width"in props||"height"in props,
4604anim=this,
4605orig={},
4606style=elem.style,
4607hidden=elem.nodeType&&isHiddenWithinTree(elem),
4608dataShow=dataPriv.get(elem,"fxshow");
4609if(!opts.queue){
4610hooks=jQuery._queueHooks(elem,"fx");
4611if(hooks.unqueued==null){
4612hooks.unqueued=0;
4613oldfire=hooks.empty.fire;
4614hooks.empty.fire=function(){
4615if(!hooks.unqueued){
4616oldfire();
4617}
4618};
4619}
4620hooks.unqueued++;
4621anim.always(function(){
4622anim.always(function(){
4623hooks.unqueued--;
4624if(!jQuery.queue(elem,"fx").length){
4625hooks.empty.fire();
4626}
4627});
4628});
4629}
4630for(prop in props){
4631value=props[prop];
4632if(rfxtypes.test(value)){
4633delete props[prop];
4634toggle=toggle||value==="toggle";
4635if(value===(hidden?"hide":"show")){
4636if(value==="show"&&dataShow&&dataShow[prop]!==undefined){
4637hidden=true;
4638}else{
4639continue;
4640}
4641}
4642orig[prop]=dataShow&&dataShow[prop]||jQuery.style(elem,prop);
4643}
4644}
4645propTween=!jQuery.isEmptyObject(props);
4646if(!propTween&&jQuery.isEmptyObject(orig)){
4647return;
4648}
4649if(isBox&&elem.nodeType===1){
4650opts.overflow=[style.overflow,style.overflowX,style.overflowY];
4651restoreDisplay=dataShow&&dataShow.display;
4652if(restoreDisplay==null){
4653restoreDisplay=dataPriv.get(elem,"display");
4654}
4655display=jQuery.css(elem,"display");
4656if(display==="none"){
4657if(restoreDisplay){
4658display=restoreDisplay;
4659}else{
4660showHide([elem],true);
4661restoreDisplay=elem.style.display||restoreDisplay;
4662display=jQuery.css(elem,"display");
4663showHide([elem]);
4664}
4665}
4666if(display==="inline"||display==="inline-block"&&restoreDisplay!=null){
4667if(jQuery.css(elem,"float")==="none"){
4668if(!propTween){
4669anim.done(function(){
4670style.display=restoreDisplay;
4671});
4672if(restoreDisplay==null){
4673display=style.display;
4674restoreDisplay=display==="none"?"":display;
4675}
4676}
4677style.display="inline-block";
4678}
4679}
4680}
4681if(opts.overflow){
4682style.overflow="hidden";
4683anim.always(function(){
4684style.overflow=opts.overflow[0];
4685style.overflowX=opts.overflow[1];
4686style.overflowY=opts.overflow[2];
4687});
4688}
4689propTween=false;
4690for(prop in orig){
4691if(!propTween){
4692if(dataShow){
4693if("hidden"in dataShow){
4694hidden=dataShow.hidden;
4695}
4696}else{
4697dataShow=dataPriv.access(elem,"fxshow",{display:restoreDisplay});
4698}
4699if(toggle){
4700dataShow.hidden=!hidden;
4701}
4702if(hidden){
4703showHide([elem],true);
4704}
4705anim.done(function(){
4706if(!hidden){
4707showHide([elem]);
4708}
4709dataPriv.remove(elem,"fxshow");
4710for(prop in orig){
4711jQuery.style(elem,prop,orig[prop]);
4712}
4713});
4714}
4715propTween=createTween(hidden?dataShow[prop]:0,prop,anim);
4716if(!(prop in dataShow)){
4717dataShow[prop]=propTween.start;
4718if(hidden){
4719propTween.end=propTween.start;
4720propTween.start=0;
4721}
4722}
4723}
4724}
4725function propFilter(props,specialEasing){
4726var index,name,easing,value,hooks;
4727for(index in props){
4728name=camelCase(index);
4729easing=specialEasing[name];
4730value=props[index];
4731if(Array.isArray(value)){
4732easing=value[1];
4733value=props[index]=value[0];
4734}
4735if(index!==name){
4736props[name]=value;
4737delete props[index];
4738}
4739hooks=jQuery.cssHooks[name];
4740if(hooks&&"expand"in hooks){
4741value=hooks.expand(value);
4742delete props[name];
4743for(index in value){
4744if(!(index in props)){
4745props[index]=value[index];
4746specialEasing[index]=easing;
4747}
4748}
4749}else{
4750specialEasing[name]=easing;
4751}
4752}
4753}
4754function Animation(elem,properties,options){
4755var result,
4756stopped,
4757index=0,
4758length=Animation.prefilters.length,
4759deferred=jQuery.Deferred().always(function(){
4760delete tick.elem;
4761}),
4762tick=function(){
4763if(stopped){
4764return false;
4765}
4766var currentTime=fxNow||createFxNow(),
4767remaining=Math.max(0,animation.startTime+animation.duration-currentTime),
4768temp=remaining/animation.duration||0,
4769percent=1-temp,
4770index=0,
4771length=animation.tweens.length;
4772for(;index<length;index++){
4773animation.tweens[index].run(percent);
4774}
4775deferred.notifyWith(elem,[animation,percent,remaining]);
4776if(percent<1&&length){
4777return remaining;
4778}
4779if(!length){
4780deferred.notifyWith(elem,[animation,1,0]);
4781}
4782deferred.resolveWith(elem,[animation]);
4783return false;
4784},
4785animation=deferred.promise({
4786elem:elem,
4787props:jQuery.extend({},properties),
4788opts:jQuery.extend(true,{
4789specialEasing:{},
4790easing:jQuery.easing._default
4791},options),
4792originalProperties:properties,
4793originalOptions:options,
4794startTime:fxNow||createFxNow(),
4795duration:options.duration,
4796tweens:[],
4797createTween:function(prop,end){
4798var tween=jQuery.Tween(elem,animation.opts,prop,end,
4799animation.opts.specialEasing[prop]||animation.opts.easing);
4800animation.tweens.push(tween);
4801return tween;
4802},
4803stop:function(gotoEnd){
4804var index=0,
4805length=gotoEnd?animation.tweens.length:0;
4806if(stopped){
4807return this;
4808}
4809stopped=true;
4810for(;index<length;index++){
4811animation.tweens[index].run(1);
4812}
4813if(gotoEnd){
4814deferred.notifyWith(elem,[animation,1,0]);
4815deferred.resolveWith(elem,[animation,gotoEnd]);
4816}else{
4817deferred.rejectWith(elem,[animation,gotoEnd]);
4818}
4819return this;
4820}
4821}),
4822props=animation.props;
4823propFilter(props,animation.opts.specialEasing);
4824for(;index<length;index++){
4825result=Animation.prefilters[index].call(animation,elem,props,animation.opts);
4826if(result){
4827if(isFunction(result.stop)){
4828jQuery._queueHooks(animation.elem,animation.opts.queue).stop=
4829result.stop.bind(result);
4830}
4831return result;
4832}
4833}
4834jQuery.map(props,createTween,animation);
4835if(isFunction(animation.opts.start)){
4836animation.opts.start.call(elem,animation);
4837}
4838animation
4839.progress(animation.opts.progress)
4840.done(animation.opts.done,animation.opts.complete)
4841.fail(animation.opts.fail)
4842.always(animation.opts.always);
4843jQuery.fx.timer(
4844jQuery.extend(tick,{
4845elem:elem,
4846anim:animation,
4847queue:animation.opts.queue
4848})
4849);
4850return animation;
4851}
4852jQuery.Animation=jQuery.extend(Animation,{
4853tweeners:{
4854"*":[function(prop,value){
4855var tween=this.createTween(prop,value);
4856adjustCSS(tween.elem,prop,rcssNum.exec(value),tween);
4857return tween;
4858}]
4859},
4860tweener:function(props,callback){
4861if(isFunction(props)){
4862callback=props;
4863props=["*"];
4864}else{
4865props=props.match(rnothtmlwhite);
4866}
4867var prop,
4868index=0,
4869length=props.length;
4870for(;index<length;index++){
4871prop=props[index];
4872Animation.tweeners[prop]=Animation.tweeners[prop]||[];
4873Animation.tweeners[prop].unshift(callback);
4874}
4875},
4876prefilters:[defaultPrefilter],
4877prefilter:function(callback,prepend){
4878if(prepend){
4879Animation.prefilters.unshift(callback);
4880}else{
4881Animation.prefilters.push(callback);
4882}
4883}
4884});
4885jQuery.speed=function(speed,easing,fn){
4886var opt=speed&&typeof speed==="object"?jQuery.extend({},speed):{
4887complete:fn||!fn&&easing||
4888isFunction(speed)&&speed,
4889duration:speed,
4890easing:fn&&easing||easing&&!isFunction(easing)&&easing
4891};
4892if(jQuery.fx.off){
4893opt.duration=0;
4894}else{
4895if(typeof opt.duration!=="number"){
4896if(opt.duration in jQuery.fx.speeds){
4897opt.duration=jQuery.fx.speeds[opt.duration];
4898}else{
4899opt.duration=jQuery.fx.speeds._default;
4900}
4901}
4902}
4903if(opt.queue==null||opt.queue===true){
4904opt.queue="fx";
4905}
4906opt.old=opt.complete;
4907opt.complete=function(){
4908if(isFunction(opt.old)){
4909opt.old.call(this);
4910}
4911if(opt.queue){
4912jQuery.dequeue(this,opt.queue);
4913}
4914};
4915return opt;
4916};
4917jQuery.fn.extend({
4918fadeTo:function(speed,to,easing,callback){
4919return this.filter(isHiddenWithinTree).css("opacity",0).show()
4920.end().animate({opacity:to},speed,easing,callback);
4921},
4922animate:function(prop,speed,easing,callback){
4923var empty=jQuery.isEmptyObject(prop),
4924optall=jQuery.speed(speed,easing,callback),
4925doAnimation=function(){
4926var anim=Animation(this,jQuery.extend({},prop),optall);
4927if(empty||dataPriv.get(this,"finish")){
4928anim.stop(true);
4929}
4930};
4931doAnimation.finish=doAnimation;
4932return empty||optall.queue===false?
4933this.each(doAnimation):
4934this.queue(optall.queue,doAnimation);
4935},
4936stop:function(type,clearQueue,gotoEnd){
4937var stopQueue=function(hooks){
4938var stop=hooks.stop;
4939delete hooks.stop;
4940stop(gotoEnd);
4941};
4942if(typeof type!=="string"){
4943gotoEnd=clearQueue;
4944clearQueue=type;
4945type=undefined;
4946}
4947if(clearQueue){
4948this.queue(type||"fx",[]);
4949}
4950return this.each(function(){
4951var dequeue=true,
4952index=type!=null&&type+"queueHooks",
4953timers=jQuery.timers,
4954data=dataPriv.get(this);
4955if(index){
4956if(data[index]&&data[index].stop){
4957stopQueue(data[index]);
4958}
4959}else{
4960for(index in data){
4961if(data[index]&&data[index].stop&&rrun.test(index)){
4962stopQueue(data[index]);
4963}
4964}
4965}
4966for(index=timers.length;index--;){
4967if(timers[index].elem===this&&
4968(type==null||timers[index].queue===type)){
4969timers[index].anim.stop(gotoEnd);
4970dequeue=false;
4971timers.splice(index,1);
4972}
4973}
4974if(dequeue||!gotoEnd){
4975jQuery.dequeue(this,type);
4976}
4977});
4978},
4979finish:function(type){
4980if(type!==false){
4981type=type||"fx";
4982}
4983return this.each(function(){
4984var index,
4985data=dataPriv.get(this),
4986queue=data[type+"queue"],
4987hooks=data[type+"queueHooks"],
4988timers=jQuery.timers,
4989length=queue?queue.length:0;
4990data.finish=true;
4991jQuery.queue(this,type,[]);
4992if(hooks&&hooks.stop){
4993hooks.stop.call(this,true);
4994}
4995for(index=timers.length;index--;){
4996if(timers[index].elem===this&&timers[index].queue===type){
4997timers[index].anim.stop(true);
4998timers.splice(index,1);
4999}
5000}
5001for(index=0;index<length;index++){
5002if(queue[index]&&queue[index].finish){
5003queue[index].finish.call(this);
5004}
5005}
5006delete data.finish;
5007});
5008}
5009});
5010jQuery.each(["toggle","show","hide"],function(_i,name){
5011var cssFn=jQuery.fn[name];
5012jQuery.fn[name]=function(speed,easing,callback){
5013return speed==null||typeof speed==="boolean"?
5014cssFn.apply(this,arguments):
5015this.animate(genFx(name,true),speed,easing,callback);
5016};
5017});
5018jQuery.each({
5019slideDown:genFx("show"),
5020slideUp:genFx("hide"),
5021slideToggle:genFx("toggle"),
5022fadeIn:{opacity:"show"},
5023fadeOut:{opacity:"hide"},
5024fadeToggle:{opacity:"toggle"}
5025},function(name,props){
5026jQuery.fn[name]=function(speed,easing,callback){
5027return this.animate(props,speed,easing,callback);
5028};
5029});
5030jQuery.timers=[];
5031jQuery.fx.tick=function(){
5032var timer,
5033i=0,
5034timers=jQuery.timers;
5035fxNow=Date.now();
5036for(;i<timers.length;i++){
5037timer=timers[i];
5038if(!timer()&&timers[i]===timer){
5039timers.splice(i--,1);
5040}
5041}
5042if(!timers.length){
5043jQuery.fx.stop();
5044}
5045fxNow=undefined;
5046};
5047jQuery.fx.timer=function(timer){
5048jQuery.timers.push(timer);
5049jQuery.fx.start();
5050};
5051jQuery.fx.interval=13;
5052jQuery.fx.start=function(){
5053if(inProgress){
5054return;
5055}
5056inProgress=true;
5057schedule();
5058};
5059jQuery.fx.stop=function(){
5060inProgress=null;
5061};
5062jQuery.fx.speeds={
5063slow:600,
5064fast:200,
5065_default:400
5066};
5067jQuery.fn.delay=function(time,type){
5068time=jQuery.fx?jQuery.fx.speeds[time]||time:time;
5069type=type||"fx";
5070return this.queue(type,function(next,hooks){
5071var timeout=window.setTimeout(next,time);
5072hooks.stop=function(){
5073window.clearTimeout(timeout);
5074};
5075});
5076};
5077(function(){
5078var input=document.createElement("input"),
5079select=document.createElement("select"),
5080opt=select.appendChild(document.createElement("option"));
5081input.type="checkbox";
5082support.checkOn=input.value!=="";
5083support.optSelected=opt.selected;
5084input=document.createElement("input");
5085input.value="t";
5086input.type="radio";
5087support.radioValue=input.value==="t";
5088})();
5089var boolHook,
5090attrHandle=jQuery.expr.attrHandle;
5091jQuery.fn.extend({
5092attr:function(name,value){
5093return access(this,jQuery.attr,name,value,arguments.length>1);
5094},
5095removeAttr:function(name){
5096return this.each(function(){
5097jQuery.removeAttr(this,name);
5098});
5099}
5100});
5101jQuery.extend({
5102attr:function(elem,name,value){
5103var ret,hooks,
5104nType=elem.nodeType;
5105if(nType===3||nType===8||nType===2){
5106return;
5107}
5108if(typeof elem.getAttribute==="undefined"){
5109return jQuery.prop(elem,name,value);
5110}
5111if(nType!==1||!jQuery.isXMLDoc(elem)){
5112hooks=jQuery.attrHooks[name.toLowerCase()]||
5113(jQuery.expr.match.bool.test(name)?boolHook:undefined);
5114}
5115if(value!==undefined){
5116if(value===null){
5117jQuery.removeAttr(elem,name);
5118return;
5119}
5120if(hooks&&"set"in hooks&&
5121(ret=hooks.set(elem,value,name))!==undefined){
5122return ret;
5123}
5124elem.setAttribute(name,value+"");
5125return value;
5126}
5127if(hooks&&"get"in hooks&&(ret=hooks.get(elem,name))!==null){
5128return ret;
5129}
5130ret=jQuery.find.attr(elem,name);
5131return ret==null?undefined:ret;
5132},
5133attrHooks:{
5134type:{
5135set:function(elem,value){
5136if(!support.radioValue&&value==="radio"&&
5137nodeName(elem,"input")){
5138var val=elem.value;
5139elem.setAttribute("type",value);
5140if(val){
5141elem.value=val;
5142}
5143return value;
5144}
5145}
5146}
5147},
5148removeAttr:function(elem,value){
5149var name,
5150i=0,
5151attrNames=value&&value.match(rnothtmlwhite);
5152if(attrNames&&elem.nodeType===1){
5153while((name=attrNames[i++])){
5154elem.removeAttribute(name);
5155}
5156}
5157}
5158});
5159boolHook={
5160set:function(elem,value,name){
5161if(value===false){
5162jQuery.removeAttr(elem,name);
5163}else{
5164elem.setAttribute(name,name);
5165}
5166return name;
5167}
5168};
5169jQuery.each(jQuery.expr.match.bool.source.match(/\w+/g),function(_i,name){
5170var getter=attrHandle[name]||jQuery.find.attr;
5171attrHandle[name]=function(elem,name,isXML){
5172var ret,handle,
5173lowercaseName=name.toLowerCase();
5174if(!isXML){
5175handle=attrHandle[lowercaseName];
5176attrHandle[lowercaseName]=ret;
5177ret=getter(elem,name,isXML)!=null?
5178lowercaseName:
5179null;
5180attrHandle[lowercaseName]=handle;
5181}
5182return ret;
5183};
5184});
5185var rfocusable=/^(?:input|select|textarea|button)$/i,
5186rclickable=/^(?:a|area)$/i;
5187jQuery.fn.extend({
5188prop:function(name,value){
5189return access(this,jQuery.prop,name,value,arguments.length>1);
5190},
5191removeProp:function(name){
5192return this.each(function(){
5193delete this[jQuery.propFix[name]||name];
5194});
5195}
5196});
5197jQuery.extend({
5198prop:function(elem,name,value){
5199var ret,hooks,
5200nType=elem.nodeType;
5201if(nType===3||nType===8||nType===2){
5202return;
5203}
5204if(nType!==1||!jQuery.isXMLDoc(elem)){
5205name=jQuery.propFix[name]||name;
5206hooks=jQuery.propHooks[name];
5207}
5208if(value!==undefined){
5209if(hooks&&"set"in hooks&&
5210(ret=hooks.set(elem,value,name))!==undefined){
5211return ret;
5212}
5213return(elem[name]=value);
5214}
5215if(hooks&&"get"in hooks&&(ret=hooks.get(elem,name))!==null){
5216return ret;
5217}
5218return elem[name];
5219},
5220propHooks:{
5221tabIndex:{
5222get:function(elem){
5223var tabindex=jQuery.find.attr(elem,"tabindex");
5224if(tabindex){
5225return parseInt(tabindex,10);
5226}
5227if(
5228rfocusable.test(elem.nodeName)||
5229rclickable.test(elem.nodeName)&&
5230elem.href
5231){
5232return 0;
5233}
5234return-1;
5235}
5236}
5237},
5238propFix:{
5239"for":"htmlFor",
5240"class":"className"
5241}
5242});
5243if(!support.optSelected){
5244jQuery.propHooks.selected={
5245get:function(elem){
5246var parent=elem.parentNode;
5247if(parent&&parent.parentNode){
5248parent.parentNode.selectedIndex;
5249}
5250return null;
5251},
5252set:function(elem){
5253var parent=elem.parentNode;
5254if(parent){
5255parent.selectedIndex;
5256if(parent.parentNode){
5257parent.parentNode.selectedIndex;
5258}
5259}
5260}
5261};
5262}
5263jQuery.each([
5264"tabIndex",
5265"readOnly",
5266"maxLength",
5267"cellSpacing",
5268"cellPadding",
5269"rowSpan",
5270"colSpan",
5271"useMap",
5272"frameBorder",
5273"contentEditable"
5274],function(){
5275jQuery.propFix[this.toLowerCase()]=this;
5276});
5277function stripAndCollapse(value){
5278var tokens=value.match(rnothtmlwhite)||[];
5279return tokens.join(" ");
5280}
5281function getClass(elem){
5282return elem.getAttribute&&elem.getAttribute("class")||"";
5283}
5284function classesToArray(value){
5285if(Array.isArray(value)){
5286return value;
5287}
5288if(typeof value==="string"){
5289return value.match(rnothtmlwhite)||[];
5290}
5291return[];
5292}
5293jQuery.fn.extend({
5294addClass:function(value){
5295var classNames,cur,curValue,className,i,finalValue;
5296if(isFunction(value)){
5297return this.each(function(j){
5298jQuery(this).addClass(value.call(this,j,getClass(this)));
5299});
5300}
5301classNames=classesToArray(value);
5302if(classNames.length){
5303return this.each(function(){
5304curValue=getClass(this);
5305cur=this.nodeType===1&&(" "+stripAndCollapse(curValue)+" ");
5306if(cur){
5307for(i=0;i<classNames.length;i++){
5308className=classNames[i];
5309if(cur.indexOf(" "+className+" ")<0){
5310cur+=className+" ";
5311}
5312}
5313finalValue=stripAndCollapse(cur);
5314if(curValue!==finalValue){
5315this.setAttribute("class",finalValue);
5316}
5317}
5318});
5319}
5320return this;
5321},
5322removeClass:function(value){
5323var classNames,cur,curValue,className,i,finalValue;
5324if(isFunction(value)){
5325return this.each(function(j){
5326jQuery(this).removeClass(value.call(this,j,getClass(this)));
5327});
5328}
5329if(!arguments.length){
5330return this.attr("class","");
5331}
5332classNames=classesToArray(value);
5333if(classNames.length){
5334return this.each(function(){
5335curValue=getClass(this);
5336cur=this.nodeType===1&&(" "+stripAndCollapse(curValue)+" ");
5337if(cur){
5338for(i=0;i<classNames.length;i++){
5339className=classNames[i];
5340while(cur.indexOf(" "+className+" ")>-1){
5341cur=cur.replace(" "+className+" "," ");
5342}
5343}
5344finalValue=stripAndCollapse(cur);
5345if(curValue!==finalValue){
5346this.setAttribute("class",finalValue);
5347}
5348}
5349});
5350}
5351return this;
5352},
5353toggleClass:function(value,stateVal){
5354var classNames,className,i,self,
5355type=typeof value,
5356isValidValue=type==="string"||Array.isArray(value);
5357if(isFunction(value)){
5358return this.each(function(i){
5359jQuery(this).toggleClass(
5360value.call(this,i,getClass(this),stateVal),
5361stateVal
5362);
5363});
5364}
5365if(typeof stateVal==="boolean"&&isValidValue){
5366return stateVal?this.addClass(value):this.removeClass(value);
5367}
5368classNames=classesToArray(value);
5369return this.each(function(){
5370if(isValidValue){
5371self=jQuery(this);
5372for(i=0;i<classNames.length;i++){
5373className=classNames[i];
5374if(self.hasClass(className)){
5375self.removeClass(className);
5376}else{
5377self.addClass(className);
5378}
5379}
5380}else if(value===undefined||type==="boolean"){
5381className=getClass(this);
5382if(className){
5383dataPriv.set(this,"__className__",className);
5384}
5385if(this.setAttribute){
5386this.setAttribute("class",
5387className||value===false?
5388"":
5389dataPriv.get(this,"__className__")||""
5390);
5391}
5392}
5393});
5394},
5395hasClass:function(selector){
5396var className,elem,
5397i=0;
5398className=" "+selector+" ";
5399while((elem=this[i++])){
5400if(elem.nodeType===1&&
5401(" "+stripAndCollapse(getClass(elem))+" ").indexOf(className)>-1){
5402return true;
5403}
5404}
5405return false;
5406}
5407});
5408var rreturn=/\r/g;
5409jQuery.fn.extend({
5410val:function(value){
5411var hooks,ret,valueIsFunction,
5412elem=this[0];
5413if(!arguments.length){
5414if(elem){
5415hooks=jQuery.valHooks[elem.type]||
5416jQuery.valHooks[elem.nodeName.toLowerCase()];
5417if(hooks&&
5418"get"in hooks&&
5419(ret=hooks.get(elem,"value"))!==undefined
5420){
5421return ret;
5422}
5423ret=elem.value;
5424if(typeof ret==="string"){
5425return ret.replace(rreturn,"");
5426}
5427return ret==null?"":ret;
5428}
5429return;
5430}
5431valueIsFunction=isFunction(value);
5432return this.each(function(i){
5433var val;
5434if(this.nodeType!==1){
5435return;
5436}
5437if(valueIsFunction){
5438val=value.call(this,i,jQuery(this).val());
5439}else{
5440val=value;
5441}
5442if(val==null){
5443val="";
5444}else if(typeof val==="number"){
5445val+="";
5446}else if(Array.isArray(val)){
5447val=jQuery.map(val,function(value){
5448return value==null?"":value+"";
5449});
5450}
5451hooks=jQuery.valHooks[this.type]||jQuery.valHooks[this.nodeName.toLowerCase()];
5452if(!hooks||!("set"in hooks)||hooks.set(this,val,"value")===undefined){
5453this.value=val;
5454}
5455});
5456}
5457});
5458jQuery.extend({
5459valHooks:{
5460option:{
5461get:function(elem){
5462var val=jQuery.find.attr(elem,"value");
5463return val!=null?
5464val:
5465stripAndCollapse(jQuery.text(elem));
5466}
5467},
5468select:{
5469get:function(elem){
5470var value,option,i,
5471options=elem.options,
5472index=elem.selectedIndex,
5473one=elem.type==="select-one",
5474values=one?null:[],
5475max=one?index+1:options.length;
5476if(index<0){
5477i=max;
5478}else{
5479i=one?index:0;
5480}
5481for(;i<max;i++){
5482option=options[i];
5483if((option.selected||i===index)&&
5484!option.disabled&&
5485(!option.parentNode.disabled||
5486!nodeName(option.parentNode,"optgroup"))){
5487value=jQuery(option).val();
5488if(one){
5489return value;
5490}
5491values.push(value);
5492}
5493}
5494return values;
5495},
5496set:function(elem,value){
5497var optionSet,option,
5498options=elem.options,
5499values=jQuery.makeArray(value),
5500i=options.length;
5501while(i--){
5502option=options[i];
5503if(option.selected=
5504jQuery.inArray(jQuery.valHooks.option.get(option),values)>-1
5505){
5506optionSet=true;
5507}
5508}
5509if(!optionSet){
5510elem.selectedIndex=-1;
5511}
5512return values;
5513}
5514}
5515}
5516});
5517jQuery.each(["radio","checkbox"],function(){
5518jQuery.valHooks[this]={
5519set:function(elem,value){
5520if(Array.isArray(value)){
5521return(elem.checked=jQuery.inArray(jQuery(elem).val(),value)>-1);
5522}
5523}
5524};
5525if(!support.checkOn){
5526jQuery.valHooks[this].get=function(elem){
5527return elem.getAttribute("value")===null?"on":elem.value;
5528};
5529}
5530});
5531support.focusin="onfocusin"in window;
5532var rfocusMorph=/^(?:focusinfocus|focusoutblur)$/,
5533stopPropagationCallback=function(e){
5534e.stopPropagation();
5535};
5536jQuery.extend(jQuery.event,{
5537trigger:function(event,data,elem,onlyHandlers){
5538var i,cur,tmp,bubbleType,ontype,handle,special,lastElement,
5539eventPath=[elem||document],
5540type=hasOwn.call(event,"type")?event.type:event,
5541namespaces=hasOwn.call(event,"namespace")?event.namespace.split("."):[];
5542cur=lastElement=tmp=elem=elem||document;
5543if(elem.nodeType===3||elem.nodeType===8){
5544return;
5545}
5546if(rfocusMorph.test(type+jQuery.event.triggered)){
5547return;
5548}
5549if(type.indexOf(".")>-1){
5550namespaces=type.split(".");
5551type=namespaces.shift();
5552namespaces.sort();
5553}
5554ontype=type.indexOf(":")<0&&"on"+type;
5555event=event[jQuery.expando]?
5556event:
5557new jQuery.Event(type,typeof event==="object"&&event);
5558event.isTrigger=onlyHandlers?2:3;
5559event.namespace=namespaces.join(".");
5560event.rnamespace=event.namespace?
5561new RegExp("(^|\\.)"+namespaces.join("\\.(?:.*\\.|)")+"(\\.|$)"):
5562null;
5563event.result=undefined;
5564if(!event.target){
5565event.target=elem;
5566}
5567data=data==null?
5568[event]:
5569jQuery.makeArray(data,[event]);
5570special=jQuery.event.special[type]||{};
5571if(!onlyHandlers&&special.trigger&&special.trigger.apply(elem,data)===false){
5572return;
5573}
5574if(!onlyHandlers&&!special.noBubble&&!isWindow(elem)){
5575bubbleType=special.delegateType||type;
5576if(!rfocusMorph.test(bubbleType+type)){
5577cur=cur.parentNode;
5578}
5579for(;cur;cur=cur.parentNode){
5580eventPath.push(cur);
5581tmp=cur;
5582}
5583if(tmp===(elem.ownerDocument||document)){
5584eventPath.push(tmp.defaultView||tmp.parentWindow||window);
5585}
5586}
5587i=0;
5588while((cur=eventPath[i++])&&!event.isPropagationStopped()){
5589lastElement=cur;
5590event.type=i>1?
5591bubbleType:
5592special.bindType||type;
5593handle=(dataPriv.get(cur,"events")||Object.create(null))[event.type]&&
5594dataPriv.get(cur,"handle");
5595if(handle){
5596handle.apply(cur,data);
5597}
5598handle=ontype&&cur[ontype];
5599if(handle&&handle.apply&&acceptData(cur)){
5600event.result=handle.apply(cur,data);
5601if(event.result===false){
5602event.preventDefault();
5603}
5604}
5605}
5606event.type=type;
5607if(!onlyHandlers&&!event.isDefaultPrevented()){
5608if((!special._default||
5609special._default.apply(eventPath.pop(),data)===false)&&
5610acceptData(elem)){
5611if(ontype&&isFunction(elem[type])&&!isWindow(elem)){
5612tmp=elem[ontype];
5613if(tmp){
5614elem[ontype]=null;
5615}
5616jQuery.event.triggered=type;
5617if(event.isPropagationStopped()){
5618lastElement.addEventListener(type,stopPropagationCallback);
5619}
5620elem[type]();
5621if(event.isPropagationStopped()){
5622lastElement.removeEventListener(type,stopPropagationCallback);
5623}
5624jQuery.event.triggered=undefined;
5625if(tmp){
5626elem[ontype]=tmp;
5627}
5628}
5629}
5630}
5631return event.result;
5632},
5633simulate:function(type,elem,event){
5634var e=jQuery.extend(
5635new jQuery.Event(),
5636event,
5637{
5638type:type,
5639isSimulated:true
5640}
5641);
5642jQuery.event.trigger(e,null,elem);
5643}
5644});
5645jQuery.fn.extend({
5646trigger:function(type,data){
5647return this.each(function(){
5648jQuery.event.trigger(type,data,this);
5649});
5650},
5651triggerHandler:function(type,data){
5652var elem=this[0];
5653if(elem){
5654return jQuery.event.trigger(type,data,elem,true);
5655}
5656}
5657});
5658if(!support.focusin){
5659jQuery.each({focus:"focusin",blur:"focusout"},function(orig,fix){
5660var handler=function(event){
5661jQuery.event.simulate(fix,event.target,jQuery.event.fix(event));
5662};
5663jQuery.event.special[fix]={
5664setup:function(){
5665var doc=this.ownerDocument||this.document||this,
5666attaches=dataPriv.access(doc,fix);
5667if(!attaches){
5668doc.addEventListener(orig,handler,true);
5669}
5670dataPriv.access(doc,fix,(attaches||0)+1);
5671},
5672teardown:function(){
5673var doc=this.ownerDocument||this.document||this,
5674attaches=dataPriv.access(doc,fix)-1;
5675if(!attaches){
5676doc.removeEventListener(orig,handler,true);
5677dataPriv.remove(doc,fix);
5678}else{
5679dataPriv.access(doc,fix,attaches);
5680}
5681}
5682};
5683});
5684}
5685var location=window.location;
5686var nonce={guid:Date.now()};
5687var rquery=(/\?/);
5688jQuery.parseXML=function(data){
5689var xml,parserErrorElem;
5690if(!data||typeof data!=="string"){
5691return null;
5692}
5693try{
5694xml=(new window.DOMParser()).parseFromString(data,"text/xml");
5695}catch(e){}
5696parserErrorElem=xml&&xml.getElementsByTagName("parsererror")[0];
5697if(!xml||parserErrorElem){
5698jQuery.error("Invalid XML: "+(
5699parserErrorElem?
5700jQuery.map(parserErrorElem.childNodes,function(el){
5701return el.textContent;
5702}).join("\n"):
5703data
5704));
5705}
5706return xml;
5707};
5708var
5709rbracket=/\[\]$/,
5710rCRLF=/\r?\n/g,
5711rsubmitterTypes=/^(?:submit|button|image|reset|file)$/i,
5712rsubmittable=/^(?:input|select|textarea|keygen)/i;
5713function buildParams(prefix,obj,traditional,add){
5714var name;
5715if(Array.isArray(obj)){
5716jQuery.each(obj,function(i,v){
5717if(traditional||rbracket.test(prefix)){
5718add(prefix,v);
5719}else{
5720buildParams(
5721prefix+"["+(typeof v==="object"&&v!=null?i:"")+"]",
5722v,
5723traditional,
5724add
5725);
5726}
5727});
5728}else if(!traditional&&toType(obj)==="object"){
5729for(name in obj){
5730buildParams(prefix+"["+name+"]",obj[name],traditional,add);
5731}
5732}else{
5733add(prefix,obj);
5734}
5735}
5736jQuery.param=function(a,traditional){
5737var prefix,
5738s=[],
5739add=function(key,valueOrFunction){
5740var value=isFunction(valueOrFunction)?
5741valueOrFunction():
5742valueOrFunction;
5743s[s.length]=encodeURIComponent(key)+"="+
5744encodeURIComponent(value==null?"":value);
5745};
5746if(a==null){
5747return"";
5748}
5749if(Array.isArray(a)||(a.jquery&&!jQuery.isPlainObject(a))){
5750jQuery.each(a,function(){
5751add(this.name,this.value);
5752});
5753}else{
5754for(prefix in a){
5755buildParams(prefix,a[prefix],traditional,add);
5756}
5757}
5758return s.join("&");
5759};
5760jQuery.fn.extend({
5761serialize:function(){
5762return jQuery.param(this.serializeArray());
5763},
5764serializeArray:function(){
5765return this.map(function(){
5766var elements=jQuery.prop(this,"elements");
5767return elements?jQuery.makeArray(elements):this;
5768}).filter(function(){
5769var type=this.type;
5770return this.name&&!jQuery(this).is(":disabled")&&
5771rsubmittable.test(this.nodeName)&&!rsubmitterTypes.test(type)&&
5772(this.checked||!rcheckableType.test(type));
5773}).map(function(_i,elem){
5774var val=jQuery(this).val();
5775if(val==null){
5776return null;
5777}
5778if(Array.isArray(val)){
5779return jQuery.map(val,function(val){
5780return{name:elem.name,value:val.replace(rCRLF,"\r\n")};
5781});
5782}
5783return{name:elem.name,value:val.replace(rCRLF,"\r\n")};
5784}).get();
5785}
5786});
5787var
5788r20=/%20/g,
5789rhash=/#.*$/,
5790rantiCache=/([?&])_=[^&]*/,
5791rheaders=/^(.*?):[ \t]*([^\r\n]*)$/mg,
5792rlocalProtocol=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
5793rnoContent=/^(?:GET|HEAD)$/,
5794rprotocol=/^\/\//,
5795prefilters={},
5796transports={},
5797allTypes="*/".concat("*"),
5798originAnchor=document.createElement("a");
5799originAnchor.href=location.href;
5800function addToPrefiltersOrTransports(structure){
5801return function(dataTypeExpression,func){
5802if(typeof dataTypeExpression!=="string"){
5803func=dataTypeExpression;
5804dataTypeExpression="*";
5805}
5806var dataType,
5807i=0,
5808dataTypes=dataTypeExpression.toLowerCase().match(rnothtmlwhite)||[];
5809if(isFunction(func)){
5810while((dataType=dataTypes[i++])){
5811if(dataType[0]==="+"){
5812dataType=dataType.slice(1)||"*";
5813(structure[dataType]=structure[dataType]||[]).unshift(func);
5814}else{
5815(structure[dataType]=structure[dataType]||[]).push(func);
5816}
5817}
5818}
5819};
5820}
5821function inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR){
5822var inspected={},
5823seekingTransport=(structure===transports);
5824function inspect(dataType){
5825var selected;
5826inspected[dataType]=true;
5827jQuery.each(structure[dataType]||[],function(_,prefilterOrFactory){
5828var dataTypeOrTransport=prefilterOrFactory(options,originalOptions,jqXHR);
5829if(typeof dataTypeOrTransport==="string"&&
5830!seekingTransport&&!inspected[dataTypeOrTransport]){
5831options.dataTypes.unshift(dataTypeOrTransport);
5832inspect(dataTypeOrTransport);
5833return false;
5834}else if(seekingTransport){
5835return!(selected=dataTypeOrTransport);
5836}
5837});
5838return selected;
5839}
5840return inspect(options.dataTypes[0])||!inspected["*"]&&inspect("*");
5841}
5842function ajaxExtend(target,src){
5843var key,deep,
5844flatOptions=jQuery.ajaxSettings.flatOptions||{};
5845for(key in src){
5846if(src[key]!==undefined){
5847(flatOptions[key]?target:(deep||(deep={})))[key]=src[key];
5848}
5849}
5850if(deep){
5851jQuery.extend(true,target,deep);
5852}
5853return target;
5854}
5855function ajaxHandleResponses(s,jqXHR,responses){
5856var ct,type,finalDataType,firstDataType,
5857contents=s.contents,
5858dataTypes=s.dataTypes;
5859while(dataTypes[0]==="*"){
5860dataTypes.shift();
5861if(ct===undefined){
5862ct=s.mimeType||jqXHR.getResponseHeader("Content-Type");
5863}
5864}
5865if(ct){
5866for(type in contents){
5867if(contents[type]&&contents[type].test(ct)){
5868dataTypes.unshift(type);
5869break;
5870}
5871}
5872}
5873if(dataTypes[0]in responses){
5874finalDataType=dataTypes[0];
5875}else{
5876for(type in responses){
5877if(!dataTypes[0]||s.converters[type+" "+dataTypes[0]]){
5878finalDataType=type;
5879break;
5880}
5881if(!firstDataType){
5882firstDataType=type;
5883}
5884}
5885finalDataType=finalDataType||firstDataType;
5886}
5887if(finalDataType){
5888if(finalDataType!==dataTypes[0]){
5889dataTypes.unshift(finalDataType);
5890}
5891return responses[finalDataType];
5892}
5893}
5894function ajaxConvert(s,response,jqXHR,isSuccess){
5895var conv2,current,conv,tmp,prev,
5896converters={},
5897dataTypes=s.dataTypes.slice();
5898if(dataTypes[1]){
5899for(conv in s.converters){
5900converters[conv.toLowerCase()]=s.converters[conv];
5901}
5902}
5903current=dataTypes.shift();
5904while(current){
5905if(s.responseFields[current]){
5906jqXHR[s.responseFields[current]]=response;
5907}
5908if(!prev&&isSuccess&&s.dataFilter){
5909response=s.dataFilter(response,s.dataType);
5910}
5911prev=current;
5912current=dataTypes.shift();
5913if(current){
5914if(current==="*"){
5915current=prev;
5916}else if(prev!=="*"&&prev!==current){
5917conv=converters[prev+" "+current]||converters["* "+current];
5918if(!conv){
5919for(conv2 in converters){
5920tmp=conv2.split(" ");
5921if(tmp[1]===current){
5922conv=converters[prev+" "+tmp[0]]||
5923converters["* "+tmp[0]];
5924if(conv){
5925if(conv===true){
5926conv=converters[conv2];
5927}else if(converters[conv2]!==true){
5928current=tmp[0];
5929dataTypes.unshift(tmp[1]);
5930}
5931break;
5932}
5933}
5934}
5935}
5936if(conv!==true){
5937if(conv&&s.throws){
5938response=conv(response);
5939}else{
5940try{
5941response=conv(response);
5942}catch(e){
5943return{
5944state:"parsererror",
5945error:conv?e:"No conversion from "+prev+" to "+current
5946};
5947}
5948}
5949}
5950}
5951}
5952}
5953return{state:"success",data:response};
5954}
5955jQuery.extend({
5956active:0,
5957lastModified:{},
5958etag:{},
5959ajaxSettings:{
5960url:location.href,
5961type:"GET",
5962isLocal:rlocalProtocol.test(location.protocol),
5963global:true,
5964processData:true,
5965async:true,
5966contentType:"application/x-www-form-urlencoded; charset=UTF-8",
5967accepts:{
5968"*":allTypes,
5969text:"text/plain",
5970html:"text/html",
5971xml:"application/xml, text/xml",
5972json:"application/json, text/javascript"
5973},
5974contents:{
5975xml:/\bxml\b/,
5976html:/\bhtml/,
5977json:/\bjson\b/
5978},
5979responseFields:{
5980xml:"responseXML",
5981text:"responseText",
5982json:"responseJSON"
5983},
5984converters:{
5985"* text":String,
5986"text html":true,
5987"text json":JSON.parse,
5988"text xml":jQuery.parseXML
5989},
5990flatOptions:{
5991url:true,
5992context:true
5993}
5994},
5995ajaxSetup:function(target,settings){
5996return settings?
5997ajaxExtend(ajaxExtend(target,jQuery.ajaxSettings),settings):
5998ajaxExtend(jQuery.ajaxSettings,target);
5999},
6000ajaxPrefilter:addToPrefiltersOrTransports(prefilters),
6001ajaxTransport:addToPrefiltersOrTransports(transports),
6002ajax:function(url,options){
6003if(typeof url==="object"){
6004options=url;
6005url=undefined;
6006}
6007options=options||{};
6008var transport,
6009cacheURL,
6010responseHeadersString,
6011responseHeaders,
6012timeoutTimer,
6013urlAnchor,
6014completed,
6015fireGlobals,
6016i,
6017uncached,
6018s=jQuery.ajaxSetup({},options),
6019callbackContext=s.context||s,
6020globalEventContext=s.context&&
6021(callbackContext.nodeType||callbackContext.jquery)?
6022jQuery(callbackContext):
6023jQuery.event,
6024deferred=jQuery.Deferred(),
6025completeDeferred=jQuery.Callbacks("once memory"),
6026statusCode=s.statusCode||{},
6027requestHeaders={},
6028requestHeadersNames={},
6029strAbort="canceled",
6030jqXHR={
6031readyState:0,
6032getResponseHeader:function(key){
6033var match;
6034if(completed){
6035if(!responseHeaders){
6036responseHeaders={};
6037while((match=rheaders.exec(responseHeadersString))){
6038responseHeaders[match[1].toLowerCase()+" "]=
6039(responseHeaders[match[1].toLowerCase()+" "]||[])
6040.concat(match[2]);
6041}
6042}
6043match=responseHeaders[key.toLowerCase()+" "];
6044}
6045return match==null?null:match.join(", ");
6046},
6047getAllResponseHeaders:function(){
6048return completed?responseHeadersString:null;
6049},
6050setRequestHeader:function(name,value){
6051if(completed==null){
6052name=requestHeadersNames[name.toLowerCase()]=
6053requestHeadersNames[name.toLowerCase()]||name;
6054requestHeaders[name]=value;
6055}
6056return this;
6057},
6058overrideMimeType:function(type){
6059if(completed==null){
6060s.mimeType=type;
6061}
6062return this;
6063},
6064statusCode:function(map){
6065var code;
6066if(map){
6067if(completed){
6068jqXHR.always(map[jqXHR.status]);
6069}else{
6070for(code in map){
6071statusCode[code]=[statusCode[code],map[code]];
6072}
6073}
6074}
6075return this;
6076},
6077abort:function(statusText){
6078var finalText=statusText||strAbort;
6079if(transport){
6080transport.abort(finalText);
6081}
6082done(0,finalText);
6083return this;
6084}
6085};
6086deferred.promise(jqXHR);
6087s.url=((url||s.url||location.href)+"")
6088.replace(rprotocol,location.protocol+"//");
6089s.type=options.method||options.type||s.method||s.type;
6090s.dataTypes=(s.dataType||"*").toLowerCase().match(rnothtmlwhite)||[""];
6091if(s.crossDomain==null){
6092urlAnchor=document.createElement("a");
6093try{
6094urlAnchor.href=s.url;
6095urlAnchor.href=urlAnchor.href;
6096s.crossDomain=originAnchor.protocol+"//"+originAnchor.host!==
6097urlAnchor.protocol+"//"+urlAnchor.host;
6098}catch(e){
6099s.crossDomain=true;
6100}
6101}
6102if(s.data&&s.processData&&typeof s.data!=="string"){
6103s.data=jQuery.param(s.data,s.traditional);
6104}
6105inspectPrefiltersOrTransports(prefilters,s,options,jqXHR);
6106if(completed){
6107return jqXHR;
6108}
6109fireGlobals=jQuery.event&&s.global;
6110if(fireGlobals&&jQuery.active++===0){
6111jQuery.event.trigger("ajaxStart");
6112}
6113s.type=s.type.toUpperCase();
6114s.hasContent=!rnoContent.test(s.type);
6115cacheURL=s.url.replace(rhash,"");
6116if(!s.hasContent){
6117uncached=s.url.slice(cacheURL.length);
6118if(s.data&&(s.processData||typeof s.data==="string")){
6119cacheURL+=(rquery.test(cacheURL)?"&":"?")+s.data;
6120delete s.data;
6121}
6122if(s.cache===false){
6123cacheURL=cacheURL.replace(rantiCache,"$1");
6124uncached=(rquery.test(cacheURL)?"&":"?")+"_="+(nonce.guid++)+
6125uncached;
6126}
6127s.url=cacheURL+uncached;
6128}else if(s.data&&s.processData&&
6129(s.contentType||"").indexOf("application/x-www-form-urlencoded")===0){
6130s.data=s.data.replace(r20,"+");
6131}
6132if(s.ifModified){
6133if(jQuery.lastModified[cacheURL]){
6134jqXHR.setRequestHeader("If-Modified-Since",jQuery.lastModified[cacheURL]);
6135}
6136if(jQuery.etag[cacheURL]){
6137jqXHR.setRequestHeader("If-None-Match",jQuery.etag[cacheURL]);
6138}
6139}
6140if(s.data&&s.hasContent&&s.contentType!==false||options.contentType){
6141jqXHR.setRequestHeader("Content-Type",s.contentType);
6142}
6143jqXHR.setRequestHeader(
6144"Accept",
6145s.dataTypes[0]&&s.accepts[s.dataTypes[0]]?
6146s.accepts[s.dataTypes[0]]+
6147(s.dataTypes[0]!=="*"?", "+allTypes+"; q=0.01":""):
6148s.accepts["*"]
6149);
6150for(i in s.headers){
6151jqXHR.setRequestHeader(i,s.headers[i]);
6152}
6153if(s.beforeSend&&
6154(s.beforeSend.call(callbackContext,jqXHR,s)===false||completed)){
6155return jqXHR.abort();
6156}
6157strAbort="abort";
6158completeDeferred.add(s.complete);
6159jqXHR.done(s.success);
6160jqXHR.fail(s.error);
6161transport=inspectPrefiltersOrTransports(transports,s,options,jqXHR);
6162if(!transport){
6163done(-1,"No Transport");
6164}else{
6165jqXHR.readyState=1;
6166if(fireGlobals){
6167globalEventContext.trigger("ajaxSend",[jqXHR,s]);
6168}
6169if(completed){
6170return jqXHR;
6171}
6172if(s.async&&s.timeout>0){
6173timeoutTimer=window.setTimeout(function(){
6174jqXHR.abort("timeout");
6175},s.timeout);
6176}
6177try{
6178completed=false;
6179transport.send(requestHeaders,done);
6180}catch(e){
6181if(completed){
6182throw e;
6183}
6184done(-1,e);
6185}
6186}
6187function done(status,nativeStatusText,responses,headers){
6188var isSuccess,success,error,response,modified,
6189statusText=nativeStatusText;
6190if(completed){
6191return;
6192}
6193completed=true;
6194if(timeoutTimer){
6195window.clearTimeout(timeoutTimer);
6196}
6197transport=undefined;
6198responseHeadersString=headers||"";
6199jqXHR.readyState=status>0?4:0;
6200isSuccess=status>=200&&status<300||status===304;
6201if(responses){
6202response=ajaxHandleResponses(s,jqXHR,responses);
6203}
6204if(!isSuccess&&
6205jQuery.inArray("script",s.dataTypes)>-1&&
6206jQuery.inArray("json",s.dataTypes)<0){
6207s.converters["text script"]=function(){};
6208}
6209response=ajaxConvert(s,response,jqXHR,isSuccess);
6210if(isSuccess){
6211if(s.ifModified){
6212modified=jqXHR.getResponseHeader("Last-Modified");
6213if(modified){
6214jQuery.lastModified[cacheURL]=modified;
6215}
6216modified=jqXHR.getResponseHeader("etag");
6217if(modified){
6218jQuery.etag[cacheURL]=modified;
6219}
6220}
6221if(status===204||s.type==="HEAD"){
6222statusText="nocontent";
6223}else if(status===304){
6224statusText="notmodified";
6225}else{
6226statusText=response.state;
6227success=response.data;
6228error=response.error;
6229isSuccess=!error;
6230}
6231}else{
6232error=statusText;
6233if(status||!statusText){
6234statusText="error";
6235if(status<0){
6236status=0;
6237}
6238}
6239}
6240jqXHR.status=status;
6241jqXHR.statusText=(nativeStatusText||statusText)+"";
6242if(isSuccess){
6243deferred.resolveWith(callbackContext,[success,statusText,jqXHR]);
6244}else{
6245deferred.rejectWith(callbackContext,[jqXHR,statusText,error]);
6246}
6247jqXHR.statusCode(statusCode);
6248statusCode=undefined;
6249if(fireGlobals){
6250globalEventContext.trigger(isSuccess?"ajaxSuccess":"ajaxError",
6251[jqXHR,s,isSuccess?success:error]);
6252}
6253completeDeferred.fireWith(callbackContext,[jqXHR,statusText]);
6254if(fireGlobals){
6255globalEventContext.trigger("ajaxComplete",[jqXHR,s]);
6256if(!(--jQuery.active)){
6257jQuery.event.trigger("ajaxStop");
6258}
6259}
6260}
6261return jqXHR;
6262},
6263getJSON:function(url,data,callback){
6264return jQuery.get(url,data,callback,"json");
6265},
6266getScript:function(url,callback){
6267return jQuery.get(url,undefined,callback,"script");
6268}
6269});
6270jQuery.each(["get","post"],function(_i,method){
6271jQuery[method]=function(url,data,callback,type){
6272if(isFunction(data)){
6273type=type||callback;
6274callback=data;
6275data=undefined;
6276}
6277return jQuery.ajax(jQuery.extend({
6278url:url,
6279type:method,
6280dataType:type,
6281data:data,
6282success:callback
6283},jQuery.isPlainObject(url)&&url));
6284};
6285});
6286jQuery.ajaxPrefilter(function(s){
6287var i;
6288for(i in s.headers){
6289if(i.toLowerCase()==="content-type"){
6290s.contentType=s.headers[i]||"";
6291}
6292}
6293});
6294jQuery._evalUrl=function(url,options,doc){
6295return jQuery.ajax({
6296url:url,
6297type:"GET",
6298dataType:"script",
6299cache:true,
6300async:false,
6301global:false,
6302converters:{
6303"text script":function(){}
6304},
6305dataFilter:function(response){
6306jQuery.globalEval(response,options,doc);
6307}
6308});
6309};
6310jQuery.fn.extend({
6311wrapAll:function(html){
6312var wrap;
6313if(this[0]){
6314if(isFunction(html)){
6315html=html.call(this[0]);
6316}
6317wrap=jQuery(html,this[0].ownerDocument).eq(0).clone(true);
6318if(this[0].parentNode){
6319wrap.insertBefore(this[0]);
6320}
6321wrap.map(function(){
6322var elem=this;
6323while(elem.firstElementChild){
6324elem=elem.firstElementChild;
6325}
6326return elem;
6327}).append(this);
6328}
6329return this;
6330},
6331wrapInner:function(html){
6332if(isFunction(html)){
6333return this.each(function(i){
6334jQuery(this).wrapInner(html.call(this,i));
6335});
6336}
6337return this.each(function(){
6338var self=jQuery(this),
6339contents=self.contents();
6340if(contents.length){
6341contents.wrapAll(html);
6342}else{
6343self.append(html);
6344}
6345});
6346},
6347wrap:function(html){
6348var htmlIsFunction=isFunction(html);
6349return this.each(function(i){
6350jQuery(this).wrapAll(htmlIsFunction?html.call(this,i):html);
6351});
6352},
6353unwrap:function(selector){
6354this.parent(selector).not("body").each(function(){
6355jQuery(this).replaceWith(this.childNodes);
6356});
6357return this;
6358}
6359});
6360jQuery.expr.pseudos.hidden=function(elem){
6361return!jQuery.expr.pseudos.visible(elem);
6362};
6363jQuery.expr.pseudos.visible=function(elem){
6364return!!(elem.offsetWidth||elem.offsetHeight||elem.getClientRects().length);
6365};
6366jQuery.ajaxSettings.xhr=function(){
6367try{
6368return new window.XMLHttpRequest();
6369}catch(e){}
6370};
6371var xhrSuccessStatus={
63720:200,
63731223:204
6374},
6375xhrSupported=jQuery.ajaxSettings.xhr();
6376support.cors=!!xhrSupported&&("withCredentials"in xhrSupported);
6377support.ajax=xhrSupported=!!xhrSupported;
6378jQuery.ajaxTransport(function(options){
6379var callback,errorCallback;
6380if(support.cors||xhrSupported&&!options.crossDomain){
6381return{
6382send:function(headers,complete){
6383var i,
6384xhr=options.xhr();
6385xhr.open(
6386options.type,
6387options.url,
6388options.async,
6389options.username,
6390options.password
6391);
6392if(options.xhrFields){
6393for(i in options.xhrFields){
6394xhr[i]=options.xhrFields[i];
6395}
6396}
6397if(options.mimeType&&xhr.overrideMimeType){
6398xhr.overrideMimeType(options.mimeType);
6399}
6400if(!options.crossDomain&&!headers["X-Requested-With"]){
6401headers["X-Requested-With"]="XMLHttpRequest";
6402}
6403for(i in headers){
6404xhr.setRequestHeader(i,headers[i]);
6405}
6406callback=function(type){
6407return function(){
6408if(callback){
6409callback=errorCallback=xhr.onload=
6410xhr.onerror=xhr.onabort=xhr.ontimeout=
6411xhr.onreadystatechange=null;
6412if(type==="abort"){
6413xhr.abort();
6414}else if(type==="error"){
6415if(typeof xhr.status!=="number"){
6416complete(0,"error");
6417}else{
6418complete(
6419xhr.status,
6420xhr.statusText
6421);
6422}
6423}else{
6424complete(
6425xhrSuccessStatus[xhr.status]||xhr.status,
6426xhr.statusText,
6427(xhr.responseType||"text")!=="text"||
6428typeof xhr.responseText!=="string"?
6429{binary:xhr.response}:
6430{text:xhr.responseText},
6431xhr.getAllResponseHeaders()
6432);
6433}
6434}
6435};
6436};
6437xhr.onload=callback();
6438errorCallback=xhr.onerror=xhr.ontimeout=callback("error");
6439if(xhr.onabort!==undefined){
6440xhr.onabort=errorCallback;
6441}else{
6442xhr.onreadystatechange=function(){
6443if(xhr.readyState===4){
6444window.setTimeout(function(){
6445if(callback){
6446errorCallback();
6447}
6448});
6449}
6450};
6451}
6452callback=callback("abort");
6453try{
6454xhr.send(options.hasContent&&options.data||null);
6455}catch(e){
6456if(callback){
6457throw e;
6458}
6459}
6460},
6461abort:function(){
6462if(callback){
6463callback();
6464}
6465}
6466};
6467}
6468});
6469jQuery.ajaxPrefilter(function(s){
6470if(s.crossDomain){
6471s.contents.script=false;
6472}
6473});
6474jQuery.ajaxSetup({
6475accepts:{
6476script:"text/javascript, application/javascript, "+
6477"application/ecmascript, application/x-ecmascript"
6478},
6479contents:{
6480script:/\b(?:java|ecma)script\b/
6481},
6482converters:{
6483"text script":function(text){
6484jQuery.globalEval(text);
6485return text;
6486}
6487}
6488});
6489jQuery.ajaxPrefilter("script",function(s){
6490if(s.cache===undefined){
6491s.cache=false;
6492}
6493if(s.crossDomain){
6494s.type="GET";
6495}
6496});
6497jQuery.ajaxTransport("script",function(s){
6498if(s.crossDomain||s.scriptAttrs){
6499var script,callback;
6500return{
6501send:function(_,complete){
6502script=jQuery("<script>")
6503.attr(s.scriptAttrs||{})
6504.prop({charset:s.scriptCharset,src:s.url})
6505.on("load error",callback=function(evt){
6506script.remove();
6507callback=null;
6508if(evt){
6509complete(evt.type==="error"?404:200,evt.type);
6510}
6511});
6512document.head.appendChild(script[0]);
6513},
6514abort:function(){
6515if(callback){
6516callback();
6517}
6518}
6519};
6520}
6521});
6522var oldCallbacks=[],
6523rjsonp=/(=)\?(?=&|$)|\?\?/;
6524jQuery.ajaxSetup({
6525jsonp:"callback",
6526jsonpCallback:function(){
6527var callback=oldCallbacks.pop()||(jQuery.expando+"_"+(nonce.guid++));
6528this[callback]=true;
6529return callback;
6530}
6531});
6532jQuery.ajaxPrefilter("json jsonp",function(s,originalSettings,jqXHR){
6533var callbackName,overwritten,responseContainer,
6534jsonProp=s.jsonp!==false&&(rjsonp.test(s.url)?
6535"url":
6536typeof s.data==="string"&&
6537(s.contentType||"")
6538.indexOf("application/x-www-form-urlencoded")===0&&
6539rjsonp.test(s.data)&&"data"
6540);
6541if(jsonProp||s.dataTypes[0]==="jsonp"){
6542callbackName=s.jsonpCallback=isFunction(s.jsonpCallback)?
6543s.jsonpCallback():
6544s.jsonpCallback;
6545if(jsonProp){
6546s[jsonProp]=s[jsonProp].replace(rjsonp,"$1"+callbackName);
6547}else if(s.jsonp!==false){
6548s.url+=(rquery.test(s.url)?"&":"?")+s.jsonp+"="+callbackName;
6549}
6550s.converters["script json"]=function(){
6551if(!responseContainer){
6552jQuery.error(callbackName+" was not called");
6553}
6554return responseContainer[0];
6555};
6556s.dataTypes[0]="json";
6557overwritten=window[callbackName];
6558window[callbackName]=function(){
6559responseContainer=arguments;
6560};
6561jqXHR.always(function(){
6562if(overwritten===undefined){
6563jQuery(window).removeProp(callbackName);
6564}else{
6565window[callbackName]=overwritten;
6566}
6567if(s[callbackName]){
6568s.jsonpCallback=originalSettings.jsonpCallback;
6569oldCallbacks.push(callbackName);
6570}
6571if(responseContainer&&isFunction(overwritten)){
6572overwritten(responseContainer[0]);
6573}
6574responseContainer=overwritten=undefined;
6575});
6576return"script";
6577}
6578});
6579support.createHTMLDocument=(function(){
6580var body=document.implementation.createHTMLDocument("").body;
6581body.innerHTML="<form></form><form></form>";
6582return body.childNodes.length===2;
6583})();
6584jQuery.parseHTML=function(data,context,keepScripts){
6585if(typeof data!=="string"){
6586return[];
6587}
6588if(typeof context==="boolean"){
6589keepScripts=context;
6590context=false;
6591}
6592var base,parsed,scripts;
6593if(!context){
6594if(support.createHTMLDocument){
6595context=document.implementation.createHTMLDocument("");
6596base=context.createElement("base");
6597base.href=document.location.href;
6598context.head.appendChild(base);
6599}else{
6600context=document;
6601}
6602}
6603parsed=rsingleTag.exec(data);
6604scripts=!keepScripts&&[];
6605if(parsed){
6606return[context.createElement(parsed[1])];
6607}
6608parsed=buildFragment([data],context,scripts);
6609if(scripts&&scripts.length){
6610jQuery(scripts).remove();
6611}
6612return jQuery.merge([],parsed.childNodes);
6613};
6614jQuery.fn.load=function(url,params,callback){
6615var selector,type,response,
6616self=this,
6617off=url.indexOf(" ");
6618if(off>-1){
6619selector=stripAndCollapse(url.slice(off));
6620url=url.slice(0,off);
6621}
6622if(isFunction(params)){
6623callback=params;
6624params=undefined;
6625}else if(params&&typeof params==="object"){
6626type="POST";
6627}
6628if(self.length>0){
6629jQuery.ajax({
6630url:url,
6631type:type||"GET",
6632dataType:"html",
6633data:params
6634}).done(function(responseText){
6635response=arguments;
6636self.html(selector?
6637jQuery("<div>").append(jQuery.parseHTML(responseText)).find(selector):
6638responseText);
6639}).always(callback&&function(jqXHR,status){
6640self.each(function(){
6641callback.apply(this,response||[jqXHR.responseText,status,jqXHR]);
6642});
6643});
6644}
6645return this;
6646};
6647jQuery.expr.pseudos.animated=function(elem){
6648return jQuery.grep(jQuery.timers,function(fn){
6649return elem===fn.elem;
6650}).length;
6651};
6652jQuery.offset={
6653setOffset:function(elem,options,i){
6654var curPosition,curLeft,curCSSTop,curTop,curOffset,curCSSLeft,calculatePosition,
6655position=jQuery.css(elem,"position"),
6656curElem=jQuery(elem),
6657props={};
6658if(position==="static"){
6659elem.style.position="relative";
6660}
6661curOffset=curElem.offset();
6662curCSSTop=jQuery.css(elem,"top");
6663curCSSLeft=jQuery.css(elem,"left");
6664calculatePosition=(position==="absolute"||position==="fixed")&&
6665(curCSSTop+curCSSLeft).indexOf("auto")>-1;
6666if(calculatePosition){
6667curPosition=curElem.position();
6668curTop=curPosition.top;
6669curLeft=curPosition.left;
6670}else{
6671curTop=parseFloat(curCSSTop)||0;
6672curLeft=parseFloat(curCSSLeft)||0;
6673}
6674if(isFunction(options)){
6675options=options.call(elem,i,jQuery.extend({},curOffset));
6676}
6677if(options.top!=null){
6678props.top=(options.top-curOffset.top)+curTop;
6679}
6680if(options.left!=null){
6681props.left=(options.left-curOffset.left)+curLeft;
6682}
6683if("using"in options){
6684options.using.call(elem,props);
6685}else{
6686curElem.css(props);
6687}
6688}
6689};
6690jQuery.fn.extend({
6691offset:function(options){
6692if(arguments.length){
6693return options===undefined?
6694this:
6695this.each(function(i){
6696jQuery.offset.setOffset(this,options,i);
6697});
6698}
6699var rect,win,
6700elem=this[0];
6701if(!elem){
6702return;
6703}
6704if(!elem.getClientRects().length){
6705return{top:0,left:0};
6706}
6707rect=elem.getBoundingClientRect();
6708win=elem.ownerDocument.defaultView;
6709return{
6710top:rect.top+win.pageYOffset,
6711left:rect.left+win.pageXOffset
6712};
6713},
6714position:function(){
6715if(!this[0]){
6716return;
6717}
6718var offsetParent,offset,doc,
6719elem=this[0],
6720parentOffset={top:0,left:0};
6721if(jQuery.css(elem,"position")==="fixed"){
6722offset=elem.getBoundingClientRect();
6723}else{
6724offset=this.offset();
6725doc=elem.ownerDocument;
6726offsetParent=elem.offsetParent||doc.documentElement;
6727while(offsetParent&&
6728(offsetParent===doc.body||offsetParent===doc.documentElement)&&
6729jQuery.css(offsetParent,"position")==="static"){
6730offsetParent=offsetParent.parentNode;
6731}
6732if(offsetParent&&offsetParent!==elem&&offsetParent.nodeType===1){
6733parentOffset=jQuery(offsetParent).offset();
6734parentOffset.top+=jQuery.css(offsetParent,"borderTopWidth",true);
6735parentOffset.left+=jQuery.css(offsetParent,"borderLeftWidth",true);
6736}
6737}
6738return{
6739top:offset.top-parentOffset.top-jQuery.css(elem,"marginTop",true),
6740left:offset.left-parentOffset.left-jQuery.css(elem,"marginLeft",true)
6741};
6742},
6743offsetParent:function(){
6744return this.map(function(){
6745var offsetParent=this.offsetParent;
6746while(offsetParent&&jQuery.css(offsetParent,"position")==="static"){
6747offsetParent=offsetParent.offsetParent;
6748}
6749return offsetParent||documentElement;
6750});
6751}
6752});
6753jQuery.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(method,prop){
6754var top="pageYOffset"===prop;
6755jQuery.fn[method]=function(val){
6756return access(this,function(elem,method,val){
6757var win;
6758if(isWindow(elem)){
6759win=elem;
6760}else if(elem.nodeType===9){
6761win=elem.defaultView;
6762}
6763if(val===undefined){
6764return win?win[prop]:elem[method];
6765}
6766if(win){
6767win.scrollTo(
6768!top?val:win.pageXOffset,
6769top?val:win.pageYOffset
6770);
6771}else{
6772elem[method]=val;
6773}
6774},method,val,arguments.length);
6775};
6776});
6777jQuery.each(["top","left"],function(_i,prop){
6778jQuery.cssHooks[prop]=addGetHookIf(support.pixelPosition,
6779function(elem,computed){
6780if(computed){
6781computed=curCSS(elem,prop);
6782return rnumnonpx.test(computed)?
6783jQuery(elem).position()[prop]+"px":
6784computed;
6785}
6786}
6787);
6788});
6789jQuery.each({Height:"height",Width:"width"},function(name,type){
6790jQuery.each({
6791padding:"inner"+name,
6792content:type,
6793"":"outer"+name
6794},function(defaultExtra,funcName){
6795jQuery.fn[funcName]=function(margin,value){
6796var chainable=arguments.length&&(defaultExtra||typeof margin!=="boolean"),
6797extra=defaultExtra||(margin===true||value===true?"margin":"border");
6798return access(this,function(elem,type,value){
6799var doc;
6800if(isWindow(elem)){
6801return funcName.indexOf("outer")===0?
6802elem["inner"+name]:
6803elem.document.documentElement["client"+name];
6804}
6805if(elem.nodeType===9){
6806doc=elem.documentElement;
6807return Math.max(
6808elem.body["scroll"+name],doc["scroll"+name],
6809elem.body["offset"+name],doc["offset"+name],
6810doc["client"+name]
6811);
6812}
6813return value===undefined?
6814jQuery.css(elem,type,extra):
6815jQuery.style(elem,type,value,extra);
6816},type,chainable?margin:undefined,chainable);
6817};
6818});
6819});
6820jQuery.each([
6821"ajaxStart",
6822"ajaxStop",
6823"ajaxComplete",
6824"ajaxError",
6825"ajaxSuccess",
6826"ajaxSend"
6827],function(_i,type){
6828jQuery.fn[type]=function(fn){
6829return this.on(type,fn);
6830};
6831});
6832jQuery.fn.extend({
6833bind:function(types,data,fn){
6834return this.on(types,null,data,fn);
6835},
6836unbind:function(types,fn){
6837return this.off(types,null,fn);
6838},
6839delegate:function(selector,types,data,fn){
6840return this.on(types,selector,data,fn);
6841},
6842undelegate:function(selector,types,fn){
6843return arguments.length===1?
6844this.off(selector,"**"):
6845this.off(types,selector||"**",fn);
6846},
6847hover:function(fnOver,fnOut){
6848return this.mouseenter(fnOver).mouseleave(fnOut||fnOver);
6849}
6850});
6851jQuery.each(
6852("blur focus focusin focusout resize scroll click dblclick "+
6853"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave "+
6854"change select submit keydown keypress keyup contextmenu").split(" "),
6855function(_i,name){
6856jQuery.fn[name]=function(data,fn){
6857return arguments.length>0?
6858this.on(name,null,data,fn):
6859this.trigger(name);
6860};
6861}
6862);
6863var rtrim=/^[\s\uFEFF\xA0]+|([^\s\uFEFF\xA0])[\s\uFEFF\xA0]+$/g;
6864jQuery.proxy=function(fn,context){
6865var tmp,args,proxy;
6866if(typeof context==="string"){
6867tmp=fn[context];
6868context=fn;
6869fn=tmp;
6870}
6871if(!isFunction(fn)){
6872return undefined;
6873}
6874args=slice.call(arguments,2);
6875proxy=function(){
6876return fn.apply(context||this,args.concat(slice.call(arguments)));
6877};
6878proxy.guid=fn.guid=fn.guid||jQuery.guid++;
6879return proxy;
6880};
6881jQuery.holdReady=function(hold){
6882if(hold){
6883jQuery.readyWait++;
6884}else{
6885jQuery.ready(true);
6886}
6887};
6888jQuery.isArray=Array.isArray;
6889jQuery.parseJSON=JSON.parse;
6890jQuery.nodeName=nodeName;
6891jQuery.isFunction=isFunction;
6892jQuery.isWindow=isWindow;
6893jQuery.camelCase=camelCase;
6894jQuery.type=toType;
6895jQuery.now=Date.now;
6896jQuery.isNumeric=function(obj){
6897var type=jQuery.type(obj);
6898return(type==="number"||type==="string")&&
6899!isNaN(obj-parseFloat(obj));
6900};
6901jQuery.trim=function(text){
6902return text==null?
6903"":
6904(text+"").replace(rtrim,"$1");
6905};
6906if(typeof define==="function"&&define.amd){
6907define("jquery",[],function(){
6908return jQuery;
6909});
6910}
6911var
6912_jQuery=window.jQuery,
6913_$=window.$;
6914jQuery.noConflict=function(deep){
6915if(window.$===jQuery){
6916window.$=_$;
6917}
6918if(deep&&window.jQuery===jQuery){
6919window.jQuery=_jQuery;
6920}
6921return jQuery;
6922};
6923if(typeof noGlobal==="undefined"){
6924window.jQuery=window.$=jQuery;
6925}
6926return jQuery;
6927});
6928
6929
6930/* prive/javascript/jquery.form.js?1788355677 */
6931
6932(function(factory){
6933if(typeof define==='function'&&define.amd){
6934define(['jquery'],factory);
6935}else if(typeof module==='object'&&module.exports){
6936module.exports=function(root,jQuery){
6937if(typeof jQuery==='undefined'){
6938if(typeof window!=='undefined'){
6939jQuery=require('jquery');
6940}
6941else{
6942jQuery=require('jquery')(root);
6943}
6944}
6945factory(jQuery);
6946return jQuery;
6947};
6948}else{
6949factory(jQuery);
6950}
6951}(function($){
6952'use strict';
6953var rCRLF=/\r?\n/g;
6954var feature={};
6955feature.fileapi=$('<input type="file">').get(0).files!==undefined;
6956feature.formdata=(typeof window.FormData!=='undefined');
6957var hasProp=!!$.fn.prop;
6958$.fn.attr2=function(){
6959if(!hasProp){
6960return this.attr.apply(this,arguments);
6961}
6962var val=this.prop.apply(this,arguments);
6963if((val&&val.jquery)||typeof val==='string'){
6964return val;
6965}
6966return this.attr.apply(this,arguments);
6967};
6968$.fn.ajaxSubmit=function(options,data,dataType,onSuccess){
6969if(!this.length){
6970log('ajaxSubmit: skipping submit process - no element selected');
6971return this;
6972}
6973var method,action,url,isMsie,iframeSrc,$form=this;
6974if(typeof options==='function'){
6975options={success:options};
6976}else if(typeof options==='string'||(options===false&&arguments.length>0)){
6977options={
6978'url':options,
6979'data':data,
6980'dataType':dataType
6981};
6982if(typeof onSuccess==='function'){
6983options.success=onSuccess;
6984}
6985}else if(typeof options==='undefined'){
6986options={};
6987}
6988method=options.method||options.type||this.attr2('method');
6989action=options.url||this.attr2('action');
6990url=(typeof action==='string')?$.trim(action):'';
6991url=url||window.location.href||'';
6992if(url){
6993url=(url.match(/^([^#]+)/)||[])[1];
6994}
6995isMsie=/(MSIE|Trident)/.test(navigator.userAgent||'');
6996iframeSrc=(isMsie&&/^https/i.test(window.location.href||''))?'javascript:false':'about:blank';
6997options=$.extend(true,{
6998url:url,
6999success:$.ajaxSettings.success,
7000type:method||$.ajaxSettings.type,
7001iframeSrc:iframeSrc
7002},options);
7003var veto={};
7004this.trigger('form-pre-serialize',[this,options,veto]);
7005if(veto.veto){
7006log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');
7007return this;
7008}
7009if(options.beforeSerialize&&options.beforeSerialize(this,options)===false){
7010log('ajaxSubmit: submit aborted via beforeSerialize callback');
7011return this;
7012}
7013var traditional=options.traditional;
7014if(typeof traditional==='undefined'){
7015traditional=$.ajaxSettings.traditional;
7016}
7017var elements=[];
7018var qx,a=this.formToArray(options.semantic,elements,options.filtering);
7019if(options.data){
7020var optionsData=$.isFunction(options.data)?options.data(a):options.data;
7021options.extraData=optionsData;
7022qx=$.param(optionsData,traditional);
7023}
7024if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){
7025log('ajaxSubmit: submit aborted via beforeSubmit callback');
7026return this;
7027}
7028this.trigger('form-submit-validate',[a,this,options,veto]);
7029if(veto.veto){
7030log('ajaxSubmit: submit vetoed via form-submit-validate trigger');
7031return this;
7032}
7033var q=$.param(a,traditional);
7034if(qx){
7035q=(q?(q+'&'+qx):qx);
7036}
7037if(options.type.toUpperCase()==='GET'){
7038options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;
7039options.data=null;
7040}else{
7041options.data=q;
7042}
7043var callbacks=[];
7044if(options.resetForm){
7045callbacks.push(function(){
7046$form.resetForm();
7047});
7048}
7049if(options.clearForm){
7050callbacks.push(function(){
7051$form.clearForm(options.includeHidden);
7052});
7053}
7054if(!options.dataType&&options.target){
7055var oldSuccess=options.success||function(){};
7056callbacks.push(function(data,textStatus,jqXHR){
7057var successArguments=arguments,
7058fn=options.replaceTarget?'replaceWith':'html';
7059if(fn=='html'){
7060data=$.parseHTML($("<div>").text(data).html())
7061};
7062$(options.target)[fn](data).each(function(){
7063oldSuccess.apply(this,successArguments);
7064});
7065});
7066}else if(options.success){
7067if($.isArray(options.success)){
7068$.merge(callbacks,options.success);
7069}else{
7070callbacks.push(options.success);
7071}
7072}
7073options.success=function(data,status,xhr){
7074var context=options.context||this;
7075for(var i=0,max=callbacks.length;i<max;i++){
7076callbacks[i].apply(context,[data,status,xhr||$form,$form]);
7077}
7078};
7079if(options.error){
7080var oldError=options.error;
7081options.error=function(xhr,status,error){
7082var context=options.context||this;
7083oldError.apply(context,[xhr,status,error,$form]);
7084};
7085}
7086if(options.complete){
7087var oldComplete=options.complete;
7088options.complete=function(xhr,status){
7089var context=options.context||this;
7090oldComplete.apply(context,[xhr,status,$form]);
7091};
7092}
7093var fileInputs=$('input[type=file]:enabled',this).filter(function(){
7094return $(this).val()!=='';
7095});
7096var hasFileInputs=fileInputs.length>0;
7097var mp='multipart/form-data';
7098var multipart=($form.attr('enctype')===mp||$form.attr('encoding')===mp);
7099var fileAPI=feature.fileapi&&feature.formdata;
7100log('fileAPI :'+fileAPI);
7101var shouldUseFrame=(hasFileInputs||multipart)&&!fileAPI;
7102var jqxhr;
7103if(options.iframe!==false&&(options.iframe||shouldUseFrame)){
7104if(options.closeKeepAlive){
7105$.get(options.closeKeepAlive,function(){
7106jqxhr=fileUploadIframe(a);
7107});
7108}else{
7109jqxhr=fileUploadIframe(a);
7110}
7111}else if((hasFileInputs||multipart)&&fileAPI){
7112jqxhr=fileUploadXhr(a);
7113}else{
7114jqxhr=$.ajax(options);
7115}
7116$form.removeData('jqxhr').data('jqxhr',jqxhr);
7117for(var k=0;k<elements.length;k++){
7118elements[k]=null;
7119}
7120this.trigger('form-submit-notify',[this,options]);
7121return this;
7122function deepSerialize(extraData){
7123var serialized=$.param(extraData,options.traditional).split('&');
7124var len=serialized.length;
7125var result=[];
7126var i,part;
7127for(i=0;i<len;i++){
7128serialized[i]=serialized[i].replace(/\+/g,' ');
7129part=serialized[i].split('=');
7130result.push([decodeURIComponent(part[0]),decodeURIComponent(part[1])]);
7131}
7132return result;
7133}
7134function fileUploadXhr(a){
7135var formdata=new FormData();
7136for(var i=0;i<a.length;i++){
7137formdata.append(a[i].name,a[i].value);
7138}
7139if(options.extraData){
7140var serializedData=deepSerialize(options.extraData);
7141for(i=0;i<serializedData.length;i++){
7142if(serializedData[i]){
7143formdata.append(serializedData[i][0],serializedData[i][1]);
7144}
7145}
7146}
7147options.data=null;
7148var s=$.extend(true,{},$.ajaxSettings,options,{
7149contentType:false,
7150processData:false,
7151cache:false,
7152type:method||'POST'
7153});
7154if(options.uploadProgress){
7155s.xhr=function(){
7156var xhr=$.ajaxSettings.xhr();
7157if(xhr.upload){
7158xhr.upload.addEventListener('progress',function(event){
7159var percent=0;
7160var position=event.loaded||event.position;
7161var total=event.total;
7162if(event.lengthComputable){
7163percent=Math.ceil(position/total*100);
7164}
7165options.uploadProgress(event,position,total,percent);
7166},false);
7167}
7168return xhr;
7169};
7170}
7171s.data=null;
7172var beforeSend=s.beforeSend;
7173s.beforeSend=function(xhr,o){
7174if(options.formData){
7175o.data=options.formData;
7176}else{
7177o.data=formdata;
7178}
7179if(beforeSend){
7180beforeSend.call(this,xhr,o);
7181}
7182};
7183return $.ajax(s);
7184}
7185function fileUploadIframe(a){
7186var form=$form[0],el,i,s,g,id,$io,io,xhr,sub,n,timedOut,timeoutHandle;
7187var deferred=$.Deferred();
7188deferred.abort=function(status){
7189xhr.abort(status);
7190};
7191if(a){
7192for(i=0;i<elements.length;i++){
7193el=$(elements[i]);
7194if(hasProp){
7195el.prop('disabled',false);
7196}else{
7197el.removeAttr('disabled');
7198}
7199}
7200}
7201s=$.extend(true,{},$.ajaxSettings,options);
7202s.context=s.context||s;
7203id='jqFormIO'+new Date().getTime();
7204var ownerDocument=form.ownerDocument;
7205var $body=$form.closest('body');
7206if(s.iframeTarget){
7207$io=$(s.iframeTarget,ownerDocument);
7208n=$io.attr2('name');
7209if(!n){
7210$io.attr2('name',id);
7211}else{
7212id=n;
7213}
7214}else{
7215$io=$('<iframe name="'+id+'" src="'+s.iframeSrc+'">',ownerDocument);
7216$io.css({position:'absolute',top:'-1000px',left:'-1000px'});
7217}
7218io=$io[0];
7219xhr={
7220aborted:0,
7221responseText:null,
7222responseXML:null,
7223status:0,
7224statusText:'n/a',
7225getAllResponseHeaders:function(){},
7226getResponseHeader:function(){},
7227setRequestHeader:function(){},
7228abort:function(status){
7229var e=(status==='timeout'?'timeout':'aborted');
7230log('aborting upload... '+e);
7231this.aborted=1;
7232try{
7233if(io.contentWindow.document.execCommand){
7234io.contentWindow.document.execCommand('Stop');
7235}
7236}catch(ignore){}
7237$io.attr('src',s.iframeSrc);
7238xhr.error=e;
7239if(s.error){
7240s.error.call(s.context,xhr,e,status);
7241}
7242if(g){
7243$.event.trigger('ajaxError',[xhr,s,e]);
7244}
7245if(s.complete){
7246s.complete.call(s.context,xhr,e);
7247}
7248}
7249};
7250g=s.global;
7251if(g&&$.active++===0){
7252$.event.trigger('ajaxStart');
7253}
7254if(g){
7255$.event.trigger('ajaxSend',[xhr,s]);
7256}
7257if(s.beforeSend&&s.beforeSend.call(s.context,xhr,s)===false){
7258if(s.global){
7259$.active--;
7260}
7261deferred.reject();
7262return deferred;
7263}
7264if(xhr.aborted){
7265deferred.reject();
7266return deferred;
7267}
7268sub=form.clk;
7269if(sub){
7270n=sub.name;
7271if(n&&!sub.disabled){
7272s.extraData=s.extraData||{};
7273s.extraData[n]=sub.value;
7274if(sub.type==='image'){
7275s.extraData[n+'.x']=form.clk_x;
7276s.extraData[n+'.y']=form.clk_y;
7277}
7278}
7279}
7280var CLIENT_TIMEOUT_ABORT=1;
7281var SERVER_ABORT=2;
7282function getDoc(frame){
7283var doc=null;
7284try{
7285if(frame.contentWindow){
7286doc=frame.contentWindow.document;
7287}
7288}catch(err){
7289log('cannot get iframe.contentWindow document: '+err);
7290}
7291if(doc){
7292return doc;
7293}
7294try{
7295doc=frame.contentDocument?frame.contentDocument:frame.document;
7296}catch(err){
7297log('cannot get iframe.contentDocument: '+err);
7298doc=frame.document;
7299}
7300return doc;
7301}
7302var csrf_token=$('meta[name=csrf-token]').attr('content');
7303var csrf_param=$('meta[name=csrf-param]').attr('content');
7304if(csrf_param&&csrf_token){
7305s.extraData=s.extraData||{};
7306s.extraData[csrf_param]=csrf_token;
7307}
7308function doSubmit(){
7309var t=$form.attr2('target'),
7310a=$form.attr2('action'),
7311mp='multipart/form-data',
7312et=$form.attr('enctype')||$form.attr('encoding')||mp;
7313form.setAttribute('target',id);
7314if(!method||/post/i.test(method)){
7315form.setAttribute('method','POST');
7316}
7317if(a!==s.url){
7318form.setAttribute('action',s.url);
7319}
7320if(!s.skipEncodingOverride&&(!method||/post/i.test(method))){
7321$form.attr({
7322encoding:'multipart/form-data',
7323enctype:'multipart/form-data'
7324});
7325}
7326if(s.timeout){
7327timeoutHandle=setTimeout(function(){
7328timedOut=true;cb(CLIENT_TIMEOUT_ABORT);
7329},s.timeout);
7330}
7331function checkState(){
7332try{
7333var state=getDoc(io).readyState;
7334log('state = '+state);
7335if(state&&state.toLowerCase()==='uninitialized'){
7336setTimeout(checkState,50);
7337}
7338}catch(e){
7339log('Server abort: ',e,' (',e.name,')');
7340cb(SERVER_ABORT);
7341if(timeoutHandle){
7342clearTimeout(timeoutHandle);
7343}
7344timeoutHandle=undefined;
7345}
7346}
7347var extraInputs=[];
7348try{
7349if(s.extraData){
7350for(var n in s.extraData){
7351if(s.extraData.hasOwnProperty(n)){
7352if($.isPlainObject(s.extraData[n])&&s.extraData[n].hasOwnProperty('name')&&s.extraData[n].hasOwnProperty('value')){
7353extraInputs.push(
7354$('<input type="hidden" name="'+s.extraData[n].name+'">',ownerDocument).val(s.extraData[n].value)
7355.appendTo(form)[0]);
7356}else{
7357extraInputs.push(
7358$('<input type="hidden" name="'+n+'">',ownerDocument).val(s.extraData[n])
7359.appendTo(form)[0]);
7360}
7361}
7362}
7363}
7364if(!s.iframeTarget){
7365$io.appendTo($body);
7366}
7367if(io.attachEvent){
7368io.attachEvent('onload',cb);
7369}else{
7370io.addEventListener('load',cb,false);
7371}
7372setTimeout(checkState,15);
7373try{
7374form.submit();
7375}catch(err){
7376var submitFn=document.createElement('form').submit;
7377submitFn.apply(form);
7378}
7379}finally{
7380form.setAttribute('action',a);
7381form.setAttribute('enctype',et);
7382if(t){
7383form.setAttribute('target',t);
7384}else{
7385$form.removeAttr('target');
7386}
7387$(extraInputs).remove();
7388}
7389}
7390if(s.forceSync){
7391doSubmit();
7392}else{
7393setTimeout(doSubmit,10);
7394}
7395var data,doc,domCheckCount=50,callbackProcessed;
7396function cb(e){
7397if(xhr.aborted||callbackProcessed){
7398return;
7399}
7400doc=getDoc(io);
7401if(!doc){
7402log('cannot access response document');
7403e=SERVER_ABORT;
7404}
7405if(e===CLIENT_TIMEOUT_ABORT&&xhr){
7406xhr.abort('timeout');
7407deferred.reject(xhr,'timeout');
7408return;
7409}
7410if(e===SERVER_ABORT&&xhr){
7411xhr.abort('server abort');
7412deferred.reject(xhr,'error','server abort');
7413return;
7414}
7415if(!doc||doc.location.href===s.iframeSrc){
7416if(!timedOut){
7417return;
7418}
7419}
7420if(io.detachEvent){
7421io.detachEvent('onload',cb);
7422}else{
7423io.removeEventListener('load',cb,false);
7424}
7425var status='success',errMsg;
7426try{
7427if(timedOut){
7428throw'timeout';
7429}
7430var isXml=s.dataType==='xml'||doc.XMLDocument||$.isXMLDoc(doc);
7431log('isXml='+isXml);
7432if(!isXml&&window.opera&&(doc.body===null||!doc.body.innerHTML)){
7433if(--domCheckCount){
7434log('requeing onLoad callback, DOM not available');
7435setTimeout(cb,250);
7436return;
7437}
7438}
7439var docRoot=doc.body?doc.body:doc.documentElement;
7440xhr.responseText=docRoot?docRoot.innerHTML:null;
7441xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;
7442if(isXml){
7443s.dataType='xml';
7444}
7445xhr.getResponseHeader=function(header){
7446var headers={'content-type':s.dataType};
7447return headers[header.toLowerCase()];
7448};
7449if(docRoot){
7450xhr.status=Number(docRoot.getAttribute('status'))||xhr.status;
7451xhr.statusText=docRoot.getAttribute('statusText')||xhr.statusText;
7452}
7453var dt=(s.dataType||'').toLowerCase();
7454var scr=/(json|script|text)/.test(dt);
7455if(scr||s.textarea){
7456var ta=doc.getElementsByTagName('textarea')[0];
7457if(ta){
7458xhr.responseText=ta.value;
7459xhr.status=Number(ta.getAttribute('status'))||xhr.status;
7460xhr.statusText=ta.getAttribute('statusText')||xhr.statusText;
7461}else if(scr){
7462var pre=doc.getElementsByTagName('pre')[0];
7463var b=doc.getElementsByTagName('body')[0];
7464if(pre){
7465xhr.responseText=pre.textContent?pre.textContent:pre.innerText;
7466}else if(b){
7467xhr.responseText=b.textContent?b.textContent:b.innerText;
7468}
7469}
7470}else if(dt==='xml'&&!xhr.responseXML&&xhr.responseText){
7471xhr.responseXML=toXml(xhr.responseText);
7472}
7473try{
7474data=httpData(xhr,dt,s);
7475}catch(err){
7476status='parsererror';
7477xhr.error=errMsg=(err||status);
7478}
7479}catch(err){
7480log('error caught: ',err);
7481status='error';
7482xhr.error=errMsg=(err||status);
7483}
7484if(xhr.aborted){
7485log('upload aborted');
7486status=null;
7487}
7488if(xhr.status){
7489status=((xhr.status>=200&&xhr.status<300)||xhr.status===304)?'success':'error';
7490}
7491if(status==='success'){
7492if(s.success){
7493s.success.call(s.context,data,'success',xhr);
7494}
7495deferred.resolve(xhr.responseText,'success',xhr);
7496if(g){
7497$.event.trigger('ajaxSuccess',[xhr,s]);
7498}
7499}else if(status){
7500if(typeof errMsg==='undefined'){
7501errMsg=xhr.statusText;
7502}
7503if(s.error){
7504s.error.call(s.context,xhr,status,errMsg);
7505}
7506deferred.reject(xhr,'error',errMsg);
7507if(g){
7508$.event.trigger('ajaxError',[xhr,s,errMsg]);
7509}
7510}
7511if(g){
7512$.event.trigger('ajaxComplete',[xhr,s]);
7513}
7514if(g&&!--$.active){
7515$.event.trigger('ajaxStop');
7516}
7517if(s.complete){
7518s.complete.call(s.context,xhr,status);
7519}
7520callbackProcessed=true;
7521if(s.timeout){
7522clearTimeout(timeoutHandle);
7523}
7524setTimeout(function(){
7525if(!s.iframeTarget){
7526$io.remove();
7527}else{
7528$io.attr('src',s.iframeSrc);
7529}
7530xhr.responseXML=null;
7531},100);
7532}
7533var toXml=$.parseXML||function(s,doc){
7534if(window.ActiveXObject){
7535doc=new ActiveXObject('Microsoft.XMLDOM');
7536doc.async='false';
7537doc.loadXML(s);
7538}else{
7539doc=(new DOMParser()).parseFromString(s,'text/xml');
7540}
7541return(doc&&doc.documentElement&&doc.documentElement.nodeName!=='parsererror')?doc:null;
7542};
7543var parseJSON=$.parseJSON||function(s){
7544window.console.error('jquery.parseJSON is undefined');
7545return null;
7546};
7547var httpData=function(xhr,type,s){
7548var ct=xhr.getResponseHeader('content-type')||'',
7549xml=((type==='xml'||!type)&&ct.indexOf('xml')>=0),
7550data=xml?xhr.responseXML:xhr.responseText;
7551if(xml&&data.documentElement.nodeName==='parsererror'){
7552if($.error){
7553$.error('parsererror');
7554}
7555}
7556if(s&&s.dataFilter){
7557data=s.dataFilter(data,type);
7558}
7559if(typeof data==='string'){
7560if((type==='json'||!type)&&ct.indexOf('json')>=0){
7561data=parseJSON(data);
7562}else if((type==='script'||!type)&&ct.indexOf('javascript')>=0){
7563$.globalEval(data);
7564}
7565}
7566return data;
7567};
7568return deferred;
7569}
7570};
7571$.fn.ajaxForm=function(options,data,dataType,onSuccess){
7572if(typeof options==='string'||(options===false&&arguments.length>0)){
7573options={
7574'url':options,
7575'data':data,
7576'dataType':dataType
7577};
7578if(typeof onSuccess==='function'){
7579options.success=onSuccess;
7580}
7581}
7582options=options||{};
7583options.delegation=options.delegation&&$.isFunction($.fn.on);
7584if(!options.delegation&&this.length===0){
7585var o={s:this.selector,c:this.context};
7586if(!$.isReady&&o.s){
7587log('DOM not ready, queuing ajaxForm');
7588$(function(){
7589$(o.s,o.c).ajaxForm(options);
7590});
7591return this;
7592}
7593log('terminating; zero elements found by selector'+($.isReady?'':' (DOM not ready)'));
7594return this;
7595}
7596if(options.delegation){
7597$(document)
7598.off('submit.form-plugin',this.selector,doAjaxSubmit)
7599.off('click.form-plugin',this.selector,captureSubmittingElement)
7600.on('submit.form-plugin',this.selector,options,doAjaxSubmit)
7601.on('click.form-plugin',this.selector,options,captureSubmittingElement);
7602return this;
7603}
7604if(options.beforeFormUnbind){
7605options.beforeFormUnbind(this,options);
7606}
7607return this.ajaxFormUnbind()
7608.on('submit.form-plugin',options,doAjaxSubmit)
7609.on('click.form-plugin',options,captureSubmittingElement);
7610};
7611function doAjaxSubmit(e){
7612var options=e.data;
7613if(!e.isDefaultPrevented()){
7614e.preventDefault();
7615$(e.target).closest('form').ajaxSubmit(options);
7616}
7617}
7618function captureSubmittingElement(e){
7619var target=e.target;
7620var $el=$(target);
7621if(!$el.is('[type=submit],[type=image]')){
7622var t=$el.closest('[type=submit]');
7623if(t.length===0){
7624return;
7625}
7626target=t[0];
7627}
7628var form=target.form;
7629form.clk=target;
7630if(target.type==='image'){
7631if(typeof e.offsetX!=='undefined'){
7632form.clk_x=e.offsetX;
7633form.clk_y=e.offsetY;
7634}else if(typeof $.fn.offset==='function'){
7635var offset=$el.offset();
7636form.clk_x=e.pageX-offset.left;
7637form.clk_y=e.pageY-offset.top;
7638}else{
7639form.clk_x=e.pageX-target.offsetLeft;
7640form.clk_y=e.pageY-target.offsetTop;
7641}
7642}
7643setTimeout(function(){
7644form.clk=form.clk_x=form.clk_y=null;
7645},100);
7646}
7647$.fn.ajaxFormUnbind=function(){
7648return this.off('submit.form-plugin click.form-plugin');
7649};
7650$.fn.formToArray=function(semantic,elements,filtering){
7651var a=[];
7652if(this.length===0){
7653return a;
7654}
7655var form=this[0];
7656var formId=this.attr('id');
7657var els=(semantic||typeof form.elements==='undefined')?form.getElementsByTagName('*'):form.elements;
7658var els2;
7659if(els){
7660els=$.makeArray(els);
7661}
7662if(formId&&(semantic||/(Edge|Trident)\//.test(navigator.userAgent))){
7663els2=$(':input[form="'+formId+'"]').get();
7664if(els2.length){
7665els=(els||[]).concat(els2);
7666}
7667}
7668if(!els||!els.length){
7669return a;
7670}
7671if($.isFunction(filtering)){
7672els=$.map(els,filtering);
7673}
7674var i,j,n,v,el,max,jmax;
7675for(i=0,max=els.length;i<max;i++){
7676el=els[i];
7677n=el.name;
7678if(!n||el.disabled){
7679continue;
7680}
7681if(semantic&&form.clk&&el.type==='image'){
7682if(form.clk===el){
7683a.push({name:n,value:$(el).val(),type:el.type});
7684a.push({name:n+'.x',value:form.clk_x},{name:n+'.y',value:form.clk_y});
7685}
7686continue;
7687}
7688v=$.fieldValue(el,true);
7689if(v&&v.constructor===Array){
7690if(elements){
7691elements.push(el);
7692}
7693for(j=0,jmax=v.length;j<jmax;j++){
7694a.push({name:n,value:v[j]});
7695}
7696}else if(feature.fileapi&&el.type==='file'){
7697if(elements){
7698elements.push(el);
7699}
7700var files=el.files;
7701if(files.length){
7702for(j=0;j<files.length;j++){
7703a.push({name:n,value:files[j],type:el.type});
7704}
7705}else{
7706a.push({name:n,value:'',type:el.type});
7707}
7708}else if(v!==null&&typeof v!=='undefined'){
7709if(elements){
7710elements.push(el);
7711}
7712a.push({name:n,value:v,type:el.type,required:el.required});
7713}
7714}
7715if(!semantic&&form.clk){
7716var $input=$(form.clk),input=$input[0];
7717n=input.name;
7718if(n&&!input.disabled&&input.type==='image'){
7719a.push({name:n,value:$input.val()});
7720a.push({name:n+'.x',value:form.clk_x},{name:n+'.y',value:form.clk_y});
7721}
7722}
7723return a;
7724};
7725$.fn.formSerialize=function(semantic){
7726return $.param(this.formToArray(semantic));
7727};
7728$.fn.fieldSerialize=function(successful){
7729var a=[];
7730this.each(function(){
7731var n=this.name;
7732if(!n){
7733return;
7734}
7735var v=$.fieldValue(this,successful);
7736if(v&&v.constructor===Array){
7737for(var i=0,max=v.length;i<max;i++){
7738a.push({name:n,value:v[i]});
7739}
7740}else if(v!==null&&typeof v!=='undefined'){
7741a.push({name:this.name,value:v});
7742}
7743});
7744return $.param(a);
7745};
7746$.fn.fieldValue=function(successful){
7747for(var val=[],i=0,max=this.length;i<max;i++){
7748var el=this[i];
7749var v=$.fieldValue(el,successful);
7750if(v===null||typeof v==='undefined'||(v.constructor===Array&&!v.length)){
7751continue;
7752}
7753if(v.constructor===Array){
7754$.merge(val,v);
7755}else{
7756val.push(v);
7757}
7758}
7759return val;
7760};
7761$.fieldValue=function(el,successful){
7762var n=el.name,t=el.type,tag=el.tagName.toLowerCase();
7763if(typeof successful==='undefined'){
7764successful=true;
7765}
7766if(successful&&(!n||el.disabled||t==='reset'||t==='button'||
7767(t==='checkbox'||t==='radio')&&!el.checked||
7768(t==='submit'||t==='image')&&el.form&&el.form.clk!==el||
7769tag==='select'&&el.selectedIndex===-1)){
7770return null;
7771}
7772if(tag==='select'){
7773var index=el.selectedIndex;
7774if(index<0){
7775return null;
7776}
7777var a=[],ops=el.options;
7778var one=(t==='select-one');
7779var max=(one?index+1:ops.length);
7780for(var i=(one?index:0);i<max;i++){
7781var op=ops[i];
7782if(op.selected&&!op.disabled){
7783var v=op.value;
7784if(!v){
7785v=(op.attributes&&op.attributes.value&&!(op.attributes.value.specified))?op.text:op.value;
7786}
7787if(one){
7788return v;
7789}
7790a.push(v);
7791}
7792}
7793return a;
7794}
7795return $(el).val().replace(rCRLF,'\r\n');
7796};
7797$.fn.clearForm=function(includeHidden){
7798return this.each(function(){
7799$('input,select,textarea',this).clearFields(includeHidden);
7800});
7801};
7802$.fn.clearFields=$.fn.clearInputs=function(includeHidden){
7803var re=/^(?:color|date|datetime|email|month|number|password|range|search|tel|text|time|url|week)$/i;
7804return this.each(function(){
7805var t=this.type,tag=this.tagName.toLowerCase();
7806if(re.test(t)||tag==='textarea'){
7807this.value='';
7808}else if(t==='checkbox'||t==='radio'){
7809this.checked=false;
7810}else if(tag==='select'){
7811this.selectedIndex=-1;
7812}else if(t==='file'){
7813if(/MSIE/.test(navigator.userAgent)){
7814$(this).replaceWith($(this).clone(true));
7815}else{
7816$(this).val('');
7817}
7818}else if(includeHidden){
7819if((includeHidden===true&&/hidden/.test(t))||
7820(typeof includeHidden==='string'&&$(this).is(includeHidden))){
7821this.value='';
7822}
7823}
7824});
7825};
7826$.fn.resetForm=function(){
7827return this.each(function(){
7828var el=$(this);
7829var tag=this.tagName.toLowerCase();
7830switch(tag){
7831case'input':
7832this.checked=this.defaultChecked;
7833case'textarea':
7834this.value=this.defaultValue;
7835return true;
7836case'option':
7837case'optgroup':
7838var select=el.parents('select');
7839if(select.length&&select[0].multiple){
7840if(tag==='option'){
7841this.selected=this.defaultSelected;
7842}else{
7843el.find('option').resetForm();
7844}
7845}else{
7846select.resetForm();
7847}
7848return true;
7849case'select':
7850el.find('option').each(function(i){
7851this.selected=this.defaultSelected;
7852if(this.defaultSelected&&!el[0].multiple){
7853el[0].selectedIndex=i;
7854return false;
7855}
7856});
7857return true;
7858case'label':
7859var forEl=$(el.attr('for'));
7860var list=el.find('input,select,textarea');
7861if(forEl[0]){
7862list.unshift(forEl[0]);
7863}
7864list.resetForm();
7865return true;
7866case'form':
7867if(typeof this.reset==='function'||(typeof this.reset==='object'&&!this.reset.nodeType)){
7868this.reset();
7869}
7870return true;
7871default:
7872el.find('form,input,label,select,textarea').resetForm();
7873return true;
7874}
7875});
7876};
7877$.fn.enable=function(b){
7878if(typeof b==='undefined'){
7879b=true;
7880}
7881return this.each(function(){
7882this.disabled=!b;
7883});
7884};
7885$.fn.selected=function(select){
7886if(typeof select==='undefined'){
7887select=true;
7888}
7889return this.each(function(){
7890var t=this.type;
7891if(t==='checkbox'||t==='radio'){
7892this.checked=select;
7893}else if(this.tagName.toLowerCase()==='option'){
7894var $sel=$(this).parent('select');
7895if(select&&$sel[0]&&$sel[0].type==='select-one'){
7896$sel.find('option').selected(false);
7897}
7898this.selected=select;
7899}
7900});
7901};
7902$.fn.ajaxSubmit.debug=false;
7903function log(){
7904if(!$.fn.ajaxSubmit.debug){
7905return;
7906}
7907var msg='[jquery.form] '+Array.prototype.join.call(arguments,'');
7908if(window.console&&window.console.log){
7909window.console.log(msg);
7910}else if(window.opera&&window.opera.postError){
7911window.opera.postError(msg);
7912}
7913}
7914}));
7915
7916
7917/* prive/javascript/jquery.autosave.js?1788355677 */
7918
7919(function($){
7920$.fn.autosave=function(opt){
7921opt=$.extend({
7922url:window.location,
7923confirm:false,
7924confirmstring:'Sauvegarder ?'
7925},opt);
7926var save_changed=function(){
7927$('form.autosavechanged')
7928.each(function(){
7929if(!opt.confirm||confirm(opt.confirmstring)){
7930var contenu=$(this).serialize();
7931var d=new Date();
7932contenu=contenu+"&__timestamp="+Math.round(d.getTime()/1000);
7933$.post(opt.url,{
7934'action':'session',
7935'var':'autosave_'+$('input[name=autosave]',this).val(),
7936'val':contenu
7937});
7938}
7939}).removeClass('autosavechanged');
7940};
7941$(window).on('unload',save_changed);
7942return this
7943.on('keyup',function(){
7944$(this).addClass('autosavechanged');
7945})
7946.on('change',function(){
7947$(this).addClass('autosavechanged');
7948save_changed();
7949})
7950.on('submit',function(){
7951save_changed();
7952});
7953};
7954})(jQuery);
7955
7956
7957/* prive/javascript/jquery.placeholder-label.js?1788355677 */
7958
7959(function($){
7960$.placeholderLabel={
7961placeholder_class:null,
7962add_placeholder:function(){
7963if($(this).val()==$(this).attr('placeholder')){
7964$(this).val('').removeClass($.placeholderLabel.placeholder_class);
7965}
7966},
7967remove_placeholder:function(){
7968if($(this).val()==''){
7969$(this).val($(this).attr('placeholder')).addClass($.placeholderLabel.placeholder_class);
7970}
7971},
7972disable_placeholder_fields:function(){
7973$(this).find("input[placeholder]").each(function(){
7974if($(this).val()==$(this).attr('placeholder')){
7975$(this).val('');
7976}
7977});
7978return true;
7979}
7980};
7981$.fn.placeholderLabel=function(options){
7982var dummy=document.createElement('input');
7983if(dummy.placeholder!=undefined){
7984return this;
7985}
7986var config={
7987placeholder_class:'placeholder'
7988};
7989if(options)$.extend(config,options);
7990$.placeholderLabel.placeholder_class=config.placeholder_class;
7991this.each(function(){
7992var input=$(this);
7993input.focus($.placeholderLabel.add_placeholder);
7994input.blur($.placeholderLabel.remove_placeholder);
7995input.triggerHandler('focus');
7996input.triggerHandler('blur');
7997$(this.form).submit($.placeholderL
7997abel.disable_placeholder_fields);
7998});
7999return this;
8000}
8001})(jQuery);
8002
8003
8004/* prive/javascript/ajaxCallback.js?1788355677 */
8005jQuery.spip=jQuery.spip||{};
8006jQuery.spip.log=function(){
8007if(jQuery.spip.debug&&window.console&&window.console.log)
8008window.console.log.apply(this,arguments);
8009}
8010jQuery.spip.test_espace_prive=function(){
8011if(typeof spipConfig.core.test_espace_prive!=undefined&&spipConfig.core.test_espace_prive){
8012return true;
8013}
8014return false;
8015}
8016if(!jQuery.spip.load_handlers){
8017jQuery.spip.load_handlers=new Array();
8018function onAjaxLoad(f){
8019jQuery.spip.load_handlers.push(f);
8020};
8021jQuery.spip.triggerAjaxLoad=function(root){
8022jQuery.spip.log('triggerAjaxLoad');
8023jQuery.spip.log(root);
8024for(var i=0;i<jQuery.spip.load_handlers.length;i++)
8025jQuery.spip.load_handlers[i].apply(root);
8026};
8027jQuery.spip.intercepted={};
8028jQuery.spip.intercepted.load=jQuery.fn.load;
8029jQuery.fn.load=function(url,params,callback){
8030if(typeof url!=="string"){
8031return jQuery.spip.intercepted.load.apply(this,arguments);
8032}
8033callback=callback||function(){};
8034if(params){
8035if(params.constructor==Function){
8036callback=params;
8037params=null;
8038}
8039}
8040params=jQuery.extend(params,{triggerAjaxLoad:false});
8041var callback2=function(){jQuery.spip.log('jQuery.load');jQuery.spip.triggerAjaxLoad(this);callback.apply(this,arguments);};
8042return jQuery.spip.intercepted.load.apply(this,[url,params,callback2]);
8043};
8044jQuery.spip.intercepted.ajaxSubmit=jQuery.fn.ajaxSubmit;
8045jQuery.fn.ajaxSubmit=function(options){
8046options=options||{};
8047if(typeof options.onAjaxLoad=="undefined"||options.onAjaxLoad!=false){
8048var me=jQuery(this).parents('div.ajax');
8049if(me.length)
8050me=me.parent();
8051else
8052me=document;
8053if(typeof options=='function')
8054options={success:options};
8055var callback=options.success||function(){};
8056options.success=function(){callback.apply(this,arguments);jQuery.spip.log('jQuery.ajaxSubmit');jQuery.spip.triggerAjaxLoad(me);}
8057}
8058return jQuery.spip.intercepted.ajaxSubmit.apply(this,[options]);
8059}
8060jQuery.spip.intercepted.ajax=jQuery.ajax;
8061jQuery.ajax=function(url,settings){
8062if(typeof settings=='undefined'){
8063settings={};
8064if(typeof url=='object'){
8065settings=url;
8066url=null;
8067}
8068}
8069if(typeof url=='string'){
8070settings['url']=url;
8071}
8072if(settings.data&&settings.data['triggerAjaxLoad']===false){
8073settings.data['triggerAjaxLoad']=null;
8074return jQuery.spip.intercepted.ajax(settings);
8075}
8076var s=jQuery.extend(true,{},jQuery.ajaxSettings,settings);
8077var callbackContext=s.context||s;
8078try{
8079if(jQuery.ajax.caller==jQuery.spip.intercepted.load||jQuery.ajax.caller==jQuery.spip.intercepted.ajaxSubmit)
8080return jQuery.spip.intercepted.ajax(settings);
8081}
8082catch(err){}
8083var orig_complete=s.complete||function(){};
8084settings.complete=function(res,status){
8085var dataType=settings.dataType;
8086var ct=(res&&(typeof res.getResponseHeader=='function'))
8087?res.getResponseHeader("content-type"):'';
8088var xml=!dataType&&ct&&ct.indexOf("xml")>=0;
8089orig_complete.call(callbackContext,res,status);
8090if((!dataType&&!xml)||dataType=="html"){
8091jQuery.spip.log('jQuery.ajax');
8092if(typeof s.onAjaxLoad=="undefined"||s.onAjaxLoad!=false)
8093jQuery.spip.triggerAjaxLoad(s.ajaxTarget?s.ajaxTarget:document);
8094}
8095};
8096return jQuery.spip.intercepted.ajax(settings);
8097};
8098}
8099jQuery.uaMatch=function(ua){
8100ua=ua.toLowerCase();
8101var match=/(chrome)[ \/]([\w.]+)/.exec(ua)||/(webkit)[ \/]([\w.]+)/.exec(ua)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua)||/(msie) ([\w.]+)/.exec(ua)||
8102ua.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua)||
8103[];
8104return{
8105browser:match[1]||"",
8106version:match[2]||"0"
8107};
8108};
8109if(!jQuery.browser){
8110matched=jQuery.uaMatch(navigator.userAgent);
8111browser={};
8112if(matched.browser){
8113browser[matched.browser]=true;
8114browser.version=matched.version;
8115}
8116if(browser.chrome){
8117browser.webkit=true;
8118}else if(browser.webkit){
8119browser.safari=true;
8120}
8121jQuery.browser=browser;
8122}
8123jQuery.getScript=function(url,callback){
8124return $.ajax({
8125url:url,
8126dataType:"script",
8127success:callback,
8128cache:true
8129});
8130}
8131jQuery.fn.positionner=function(force,setfocus){
8132if(!this.length){
8133return this;
8134}
8135var offset=jQuery(this).offset();
8136var hauteur=parseInt(jQuery(this).css('height'));
8137var marge=jQuery.spip.positionner_marge||5;
8138var scrolltop=self['pageYOffset']||
8139jQuery.boxModel&&document.documentElement['scrollTop']||
8140document.body['scrollTop'];
8141var h=jQuery(window).height();
8142var scroll=0;
8143if(force||(offset&&offset['top']-marge<=scrolltop)){
8144scroll=offset['top']-marge;
8145}
8146else if(offset&&offset['top']+hauteur-h+marge>scrolltop){
8147scroll=Math.min(offset['top']-marge-15,offset['top']+hauteur-h+40);
8148}
8149if(scroll)
8150jQuery('html,body')
8151.animate({scrollTop:scroll},300);
8152if(setfocus!==false)
8153jQuery(jQuery('*',this).filter('input[type=text],textarea')[0]).focus();
8154return this;
8155}
8156jQuery.spip.virtualbuffer_id='spip_virtualbufferupdate';
8157jQuery.spip.initReaderBuffer=function(){
8158if(jQuery('#'+jQuery.spip.virtualbuffer_id).length)return;
8159jQuery('body').append('<div style="float:left;width:0;height:0;position:absolute;left:-5000px;top:-5000px;"><input type="hidden" name="'+jQuery.spip.virtualbuffer_id+'" id="'+jQuery.spip.virtualbuffer_id+'" value="0"></div>');
8160}
8161jQuery.spip.updateReaderBuffer=function(){
8162var i=jQuery('#'+jQuery.spip.virtualbuffer_id);
8163if(!i.length)return;
8164i.val(parseInt(i.val())+1);
8165}
8166jQuery.fn.formulaire_setContainer=function(){
8167if(!this.closest('.ajax-form-container').length){
8168this.find('script').remove();
8169var aria=this.data('aria');
8170var $container=jQuery('<div class="ajax-form-container"></div>');
8171if(aria&&typeof aria==='object'){
8172for(var i in aria){
8173$container=$container.attr(i,aria[i]);
8174}
8175}
8176else{
8177aria=false;
8178}
8179this.wrap($container);
8180if(aria){
8181jQuery('form',this).not('[aria-live]').attr('aria-live','off');
8182}
8183}
8184return this;
8185}
8186jQuery.fn.formulaire_dyn_ajax=function(target){
8187if(this.length)
8188jQuery.spip.initReaderBuffer();
8189return this.each(function(){
8190var scrollwhensubmit=!jQuery(this).is('.noscroll');
8191var cible=target||this;
8192jQuery(cible).formulaire_setContainer();
8193jQuery('form:not(.noajax):not(.bouton_action_post)',this).each(function(){
8194var leform=this;
8195var leclk,leclk_x,leclk_y;
8196var onError=function(xhr,status,error,$form){
8197jQuery(leform).ajaxFormUnbind().find('input[name="var_ajax"]').remove();
8198var msg="Erreur";
8199if(typeof(error_on_ajaxform)!=="undefined")msg=error_on_ajaxform;
8200jQuery(leform).prepend("<p class='error ajax-error none'>"+msg+"</p>").find('.ajax-error').show('fast');
8201jQuery(cible).closest('.ajax-form-container').endLoading(true);
8202}
8203jQuery(this).prepend("<input type='hidden' name='var_ajax' value='form'>")
8204.ajaxForm({
8205beforeSubmit:function(){
8206leclk=leform.clk;
8207var scrollwhensubmit_button=true;
8208if(leclk){
8209scrollwhensubmit_button=!jQuery(leclk).is('.noscroll');
8210var n=leclk.name;
8211if(n&&!leclk.disabled&&leclk.type==="image"){
8212leclk_x=leform.clk_x;
8213leclk_y=leform.clk_y;
8214}
8215}
8216jQuery(cible).wrap('<div />');
8217cible=jQuery(cible).parent();
8218jQuery(cible).closest('.ajax-form-container').animateLoading();
8219if(scrollwhensubmit&&scrollwhensubmit_button){
8220jQuery(cible).positionner(false,false);
8221}
8222},
8223error:onError,
8224success:function(c,status,xhr,$form){
8225if(c.match(/^\s*noajax\s*$/)){
8226jQuery("input[name=var_ajax]",leform).remove();
8227if(leclk){
8228var n=leclk.name;
8229if(n&&!leclk.disabled){
8230jQuery(leform).prepend("<input type='hidden' name='"+n+"' value='"+leclk.value+"'>");
8231if(leclk.type==="image"){
8232jQuery(leform).prepend("<input type='hidden' name='"+n+".x' value='"+leform.clk_x+"'>");
8233jQuery(leform).prepend("<input type='hidden' name='"+n+".y' value='"+leform.clk_y+"'>");
8234}
8235}
8236}
8237jQuery(leform).ajaxFormUnbind().closest('.formulaire_spip').addClass('resubmit-noajax');
8238try{
8239leform.submit();
8240}catch(err){
8241var submitFn=document.createElement('form').submit;
8242submitFn.apply(leform);
8243}
8244}
8245else{
8246if(!c.length||c.indexOf("ajax-form-is-ok")==-1)
8247return onError.apply(this,[status,xhr,$form]);
8248var preloaded=jQuery.spip.preloaded_urls;
8249jQuery.spip.preloaded_urls={};
8250jQuery(cible).html(c);
8251var a=jQuery('a:first',cible).eq(0);
8252var d=jQuery('div.ajax',cible);
8253if(!d.length){
8254jQuery(cible).addClass('ajax');
8255if(!scrollwhensubmit)
8256jQuery(cible).addClass('noscroll');
8257}
8258else{
8259d.siblings('br.bugajaxie').remove();
8260cible=jQuery(":first",cible);
8261cible.unwrap();
8262}
8263if(a.length
8264&&a.is('a[name=ajax_ancre]')
8265&&jQuery(a.attr('href'),cible).length){
8266a=a.attr('href');
8267if(jQuery(a,cible).length)
8268setTimeout(function(){
8269jQuery(a,cible).positionner(false);
8270},10);
8271jQuery(cible).closest('.ajax-form-container').endLoading(true);
8272}
8273else{
8274if(a.length&&a.is('a[name=ajax_redirect]')){
8275a=a.get(0).href;
8276setTimeout(function(){
8277var cur=window.location.href.split('#');
8278document.location.replace(a);
8279if(cur[0]==a.split('#')[0]){
8280window.location.reload();
8281}
8282},10);
8283jQuery(cible).closest('.ajax-form-container').animateLoading();
8284}
8285else{
8286jQuery(cible).closest('.ajax-form-container').endLoading(true);
8287}
8288}
8289if(!jQuery('.reponse_formulaire_ok',cible).length)
8290jQuery.spip.preloaded_urls=preloaded;
8291jQuery.spip.updateReaderBuffer();
8292}
8293}
8294})
8295.addClass('noajax hasajax');
8296});
8297});
8298}
8299jQuery.fn.formulaire_verifier=function(callback,champ){
8300var erreurs={'message_erreur':'form non ajax'};
8301var me=this;
8302if(jQuery(me).closest('.ajax-form-container').attr('aria-busy')!='true'){
8303if(jQuery(me).is('form.hasajax')){
8304jQuery(me).ajaxSubmit({
8305dataType:"json",
8306data:{formulaire_action_verifier_json:true},
8307success:function(errs){
8308var args=[errs,champ]
8309if(jQuery(me).closest('.ajax-form-container').attr('aria-busy')!='true')
8310callback.apply(me,args);
8311}
8312});
8313}
8314else
8315callback.apply(me,[erreurs,champ]);
8316}
8317return this;
8318}
8319jQuery.fn.formulaire_activer_verif_auto=function(callback){
8320callback=callback||formulaire_actualiser_erreurs;
8321var me=jQuery(this).closest('.ajax-form-container');
8322var check=function(){
8323var name=jQuery(this).attr('name');
8324setTimeout(function(){me.find('form').formulaire_verifier(callback,name);},50);
8325}
8326var activer=function(){
8327if(me.find('form').attr('data-verifjson')!='on'){
8328me
8329.find('form')
8330.attr('data-verifjson','on')
8331.find('input,select,textarea')
8332.on('change',check);
8333}
8334}
8335jQuery(activer);
8336onAjaxLoad(function(){setTimeout(activer,150);});
8337}
8338function formulaire_actualiser_erreurs(erreurs){
8339var parent=jQuery(this).closest('.formulaire_spip');
8340if(!parent.length)return;
8341parent.find('.reponse_formulaire,.erreur_message').fadeOut().remove();
8342parent.find('.erreur').removeClass('erreur');
8343if(erreurs['message_ok'])
8344parent.find('form').before('<p class="reponse_formulaire reponse_formulaire_ok">'+erreurs['message_ok']+'</p>');
8345if(erreurs['message_erreur'])
8346parent.find('form').before('<p class="reponse_formulaire reponse_formulaire_erreur">'+erreurs['message_erreur']+'</p>');
8347for(var k in erreurs){
8348var saisie=parent.find('.editer_'+k);
8349if(saisie.length){
8350saisie.addClass('erreur');
8351saisie.find('label').after('<span class="erreur_message">'+erreurs[k]+'</span>');
8352}
8353}
8354}
8355var ajax_confirm=true;
8356var ajax_confirm_date=0;
8357var spip_confirm=window.confirm;
8358function _confirm(message){
8359ajax_confirm=spip_confirm(message);
8360if(!ajax_confirm){
8361var d=new Date();
8362ajax_confirm_date=d.getTime();
8363}
8364return ajax_confirm;
8365}
8366window.confirm=_confirm;
8367var ajaxbloc_selecteur;
8368jQuery.spip.preloaded_urls={};
8369jQuery.spip.on_ajax_loaded=function(blocfrag,c,href,history){
8370history=history||(history==null);
8371if(typeof href==undefined||href==null)
8372history=false;
8373if(history)
8374jQuery.spip.setHistoryState(blocfrag);
8375if(jQuery(blocfrag).attr('data-loaded-callback')){
8376var callback=eval(jQuery(blocfrag).attr('data-loaded-callback'));
8377callback.call(blocfrag,c,href,history);
8378}
8379else{
8380jQuery(blocfrag)
8381.html(c)
8382.endLoading();
8383}
8384if(typeof href!=undefined)
8385jQuery(blocfrag).attr('data-url',href);
8386if(history){
8387var href_history=href;
8388if(href_history.indexOf('var_nullify')!==-1){
8389href_history=parametre_url(href_history,'var_nullify','');
8390}
8391jQuery.spip.pushHistoryState(href_history);
8392jQuery.spip.setHistoryState(blocfrag);
8393}
8394var a=jQuery('a:first',jQuery(blocfrag)).eq(0);
8395if(a.length
8396&&a.is('a[name=ajax_ancre]')
8397&&jQuery(a.attr('href'),blocfrag).length){
8398a=a.attr('href');
8399jQuery(a,blocfrag).positionner(false);
8400}
8401jQuery.spip.log('on_ajax_loaded');
8402jQuery.spip.triggerAjaxLoad(blocfrag);
8403a=jQuery(blocfrag).parents('form.hasajax')
8404if(a.length)
8405a.eq(0).removeClass('noajax').parents('div.ajax').formulaire_dyn_ajax();
8406jQuery.spip.updateReaderBuffer();
8407}
8408jQuery.spip.on_ajax_failed=function(blocfrag,statusCode,href,history){
8409jQuery(blocfrag).addClass('invalid');
8410jQuery.spip.log("Echec AJAX statusCode "+statusCode)
8411history=history||(history==null);
8412if(history){
8413if(jQuery.spip.debug){
8414jQuery.spip.log("On redirige sur sur "+href)
8415}
8416else{
8417window.location.href=href;
8418}
8419}
8420}
8421jQuery.spip.stateId=0;
8422jQuery.spip.setHistoryState=function(blocfrag){
8423if(!window.history.replaceState)return;
8424if(!blocfrag.attr('id')){
8425while(jQuery('#ghsid'+jQuery.spip.stateId).length)
8426jQuery.spip.stateId++;
8427blocfrag.attr('id','ghsid'+jQuery.spip.stateId);
8428}
8429var href=blocfrag.attr('data-url')||blocfrag.attr('data-origin');
8430href=jQuery("<"+"a href='"+href+"'></a>").get(0).href;
8431var state={
8432id:blocfrag.attr('id'),
8433href:href
8434};
8435var ajaxid=blocfrag.attr('class').match(/\bajax-id-[\w-]+\b/);
8436if(ajaxid&&ajaxid.length)
8437state["ajaxid"]=ajaxid[0];
8438window.history.replaceState(state,window.document.title,window.document.location);
8439}
8440jQuery.spip.pushHistoryState=function(href,title){
8441if(!window.history.pushState)
8442return false;
8443window.history.pushState({},title,href);
8444}
8445window.onpopstate=function(popState){
8446if(popState.state&&popState.state.href){
8447var blocfrag=false;
8448if(popState.state.id){
8449blocfrag=jQuery('#'+popState.state.id);
8450}
8451if((!blocfrag||!blocfrag.length)&&popState.state.ajaxid){
8452blocfrag=jQuery('.ajaxbloc.'+popState.state.ajaxid);
8453}
8454if(blocfrag&&blocfrag.length==1){
8455jQuery.spip.ajaxClick(blocfrag,popState.state.href,{history:false});
8456return true;
8457}
8458else{
8459window.location.href=popState.state.href;
8460}
8461}
8462}
8463jQuery.spip.loadAjax=function(blocfrag,url,href,options){
8464var force=options.force||false;
8465if(jQuery(blocfrag).attr('data-loading-callback')){
8466var callback=eval(jQuery(blocfrag).attr('data-loading-callback'));
8467callback.call(blocfrag,url,href,options);
8468}
8469else{
8470jQuery(blocfrag).animateLoading();
8471}
8472if(jQuery.spip.preloaded_urls[url]&&!force){
8473if(jQuery.spip.preloaded_urls[url]=="<!--loading-->"){
8474setTimeout(function(){jQuery.spip.loadAjax(blocfrag,url,href,options);},100);
8475return;
8476}
8477jQuery.spip.on_ajax_loaded(blocfrag,jQuery.spip.preloaded_urls[url],href,options.history);
8478}else{
8479var d=new Date();
8480jQuery.spip.preloaded_urls[url]="<!--loading-->";
8481jQuery.ajax({
8482url:parametre_url(url,'var_t',d.getTime()),
8483onAjaxLoad:false,
8484success:function(c){
8485jQuery.spip.on_ajax_loaded(blocfrag,c,href,options.history);
8486jQuery.spip.preloaded_urls[url]=c;
8487if(options.callback&&typeof options.callback=="function")
8488options.callback.apply(blocfrag);
8489},
8490error:function(e){
8491jQuery.spip.preloaded_urls[url]='';
8492jQuery.spip.on_ajax_failed(blocfrag,e.status,href,options.history);
8493}
8494});
8495}
8496}
8497jQuery.spip.makeAjaxUrl=function(href,ajax_env,origin){
8498var url=href.split('#');
8499url[0]=parametre_url(url[0],'var_ajax',1);
8500url[0]=parametre_url(url[0],'var_ajax_env',ajax_env);
8501if(origin){
8502if(origin.indexOf('var_nullify')!==-1){
8503origin=parametre_url(origin,'var_nullify','');
8504}
8505var p=origin.indexOf('?');
8506var nullify=[];
8507if(p!==-1){
8508var args=origin.substring(p+1).split('&');
8509var val;
8510var arg;
8511for(var n=0;n<args.length;n++){
8512arg=args[n].split('=');
8513arg=decodeURIComponent(arg[0]);
8514p=arg.indexOf('[');
8515if(p!==-1)
8516arg=arg.substring(0,p);
8517val=parametre_url(href,arg);
8518if((typeof val=="undefined"||val==null)&&nullify.indexOf(arg)===-1){
8519nullify.push(arg);
8520}
8521}
8522if(nullify.length){
8523url[0]=url[0]+'&'+'var_nullify='+encodeURIComponent(nullify.join('|'));
8524}
8525}
8526}
8527if(url[1])
8528url[0]=parametre_url(url[0],'var_ajax_ancre',url[1]);
8529return url[0];
8530}
8531jQuery.spip.ajaxReload=function(blocfrag,options){
8532var ajax_env=blocfrag.attr('data-ajax-env');
8533if(!ajax_env||ajax_env==undefined)return;
8534var href=options.href||blocfrag.attr('data-url')||blocfrag.attr('data-origin');
8535if(href&&typeof href!=undefined){
8536if(href.indexOf('var_nullify')!==-1){
8537href=parametre_url(href,'var_nullify','');
8538}
8539options=options||{};
8540var callback=options.callback||null;
8541var history=options.history||false;
8542var args=options.args||{};
8543for(var key in args){
8544href=parametre_url(href,key,args[key]==undefined?'':args[key],'&',args[key]==undefined?false:true);
8545}
8546var url=jQuery.spip.makeAjaxUrl(href,ajax_env,blocfrag.attr('data-origin'));
8547jQuery.spip.loadAjax(blocfrag,url,href,{force:true,callback:callback,history:history});
8548return true;
8549}
8550}
8551jQuery.spip.ajaxClick=function(blocfrag,href,options){
8552var ajax_env=blocfrag.attr('data-ajax-env');
8553if(!ajax_env||ajax_env==undefined)return;
8554if(!ajax_confirm){
8555ajax_confirm=true;
8556var d=new Date();
8557if((d.getTime()-ajax_confirm_date)<=2)
8558return false;
8559}
8560var url=jQuery.spip.makeAjaxUrl(href,ajax_env,blocfrag.attr('data-origin'));
8561jQuery.spip.loadAjax(blocfrag,url,href,options);
8562return false;
8563}
8564jQuery.fn.ajaxbloc=function(){
8565if(this.length)
8566jQuery.spip.initReaderBuffer();
8567if(ajaxbloc_selecteur==undefined)
8568ajaxbloc_selecteur='.pagination a,a.ajax';
8569return this.each(function(){
8570jQuery('div.ajaxbloc',this).ajaxbloc();
8571var blocfrag=jQuery(this);
8572var ajax_env=blocfrag.attr('data-ajax-env');
8573if(!ajax_env||ajax_env==undefined)return;
8574blocfrag.not('.bind-ajaxReload').on('ajaxReload',function(event,options){
8575if(jQuery.spip.ajaxReload(blocfrag,options))
8576event.stopPropagation();
8577}).addClass('bind-ajaxReload');
8578jQuery(ajaxbloc_selecteur,this).not('.noajax,.bind-ajax')
8579.click(function(){return jQuery.spip.ajaxClick(blocfrag,this.href,{force:jQuery(this).is('.nocache'),history:!(jQuery(this).is('.nohistory')||jQuery(this).closest('.box_modalbox').length)});})
8580.addClass('bind-ajax')
8581.filter('.preload').each(function(){
8582var href=this.href;
8583var url=jQuery.spip.makeAjaxUrl(href,ajax_env,blocfrag.attr('data-origin'));
8584if(!jQuery.spip.preloaded_urls[url]){
8585jQuery.spip.preloaded_urls[url]='<!--loading-->';
8586jQuery.ajax({url:url,onAjaxLoad:false,success:function(r){jQuery.spip.preloaded_urls[url]=r;},error:function(){jQuery.spip.preloaded_urls[url]='';}});
8587}
8588});
8589jQuery('form.bouton_action_post.ajax',this).not('.noajax,.bind-ajax').each(function(){
8590var leform=this;
8591var url=jQuery(this).attr('action').split('#');
8592var scrollwhensubmit=(!jQuery(this).is('.noscroll')&&!jQuery('.submit',this).is('.noscroll'));
8593jQuery(this)
8594.prepend("<input type='hidden' name='var_ajax' value='1'><input type='hidden' name='var_ajax_env' value='"+(ajax_env)+"'>"+(url[1]?"<input type='hidden' name='var_ajax_ancre' value='"+url[1]+"'>":""))
8595.ajaxForm({
8596beforeSubmit:function(){
8597jQuery(blocfrag).animateLoading();
8598if(scrollwhensubmit){
8599jQuery(blocfrag).positionner(false);
8600}
8601},
8602onAjaxLoad:false,
8603success:function(c){
8604jQuery.spip.on_ajax_loaded(blocfrag,c);
8605jQuery.spip.preloaded_urls={};
8606},
8607error:function(e){
8608jQuery.spip.preloaded_urls={};
8609var href=parametre_url(url,'redirect');
8610if(!href){
8611href=window.location.href;
8612}
8613jQuery.spip.on_ajax_failed(blocfrag,e.status,href,e.status===400);
8614}
8615})
8616.addClass('bind-ajax');
8617});
8618});
8619};
8620jQuery.fn.followLink=function(){
8621$(this).click();
8622if(!$(this).is('.bind-ajax'))
8623window.location.href=$(this).get(0).href;
8624return this;
8625}
8626function ajaxReload(ajaxid,options){
8627jQuery('div.ajaxbloc.ajax-id-'+ajaxid).ajaxReload(options);
8628}
8629jQuery.fn.ajaxReload=function(options){
8630options=options||{};
8631jQuery(this).trigger('ajaxReload',[options]);
8632return this;
8633}
8634jQuery.fn.animateLoading=function(){
8635this.attr('aria-busy','true').addClass('loading').children().css('opacity',0.5);
8636if(typeof ajax_image_searching!='undefined'){
8637var i=(this).find('.image_loading');
8638if(i.length)i.eq(0).html(ajax_image_searching);
8639else this.prepend('<span class="image_loading">'+ajax_image_searching+'</span>');
8640}
8641return this;
8642}
8643jQuery.fn.animeajax=jQuery.fn.animateLoading;
8644jQuery.fn.endLoading=function(hard){
8645hard=hard||false;
8646this.attr('aria-busy','false').removeClass('loading');
8647if(hard){
8648this.children().css('opacity','');
8649this.find('.image_loading').html('');
8650}
8651return this;
8652}
8653jQuery.fn.animateRemove=function(callback){
8654if(this.length){
8655var me=this;
8656var color=$("<div class='remove'></div>").css('background-color');
8657var sel=$(this);
8658if(sel.is('tr'))
8659sel=sel.add('>td',sel);
8660sel.addClass('remove').css({backgroundColor:color}).animate({opacity:"0.0"},'fast',function(){
8661sel.removeClass('remove').css({backgroundColor:''});
8662if(callback)
8663callback.apply(me);
8664});
8665}
8666return this;
8667}
8668jQuery.fn.animateAppend=function(callback){
8669if(this.length){
8670var me=this;
8671var color=$("<div class='append'></div>").css('background-color');
8672var origin=$(this).css('background-color')||'#ffffff';
8673if(origin=='transparent')origin='#ffffff';
8674var sel=$(this);
8675if(sel.is('tr'))
8676sel=sel.add('>td',sel);
8677sel.css('opacity','0.0').addClass('append').css({backgroundColor:color}).animate({opacity:"1.0"},1000,function(){
8678sel.animate({backgroundColor:origin},3000,function(){
8679sel.removeClass('append').css({backgroundColor:''});
8680if(callback)
8681callback.apply(me);
8682});
8683});
8684}
8685return this;
8686}
8687function parametre_url(url,c,v,sep,force_vide){
8688if(typeof(url)=='undefined'){
8689url='';
8690}
8691var p;
8692var ancre='';
8693var a='./';
8694var args=[];
8695p=url.indexOf('#');
8696if(p!=-1){
8697ancre=url.substring(p);
8698url=url.substring(0,p);
8699}
8700p=url.indexOf('?');
8701if(p!==-1){
8702if(p>0)a=url.substring(0,p);
8703args=url.substring(p+1).split('&');
8704}
8705else
8706a=url;
8707var regexp=new RegExp('^('+c.replace('[]','\\[\\]')+'\\[?\\]?)(=.*)?$');
8708var ajouts=[];
8709var u=(typeof(v)!=='object')?encodeURIComponent(v):v;
8710var na=[];
8711var v_read=null;
8712for(var n=0;n<args.length;n++){
8713var val=args[n];
8714try{
8715val=decodeURIComponent(val);
8716}catch(e){}
8717var r=val.match(regexp);
8718if(r&&r.length){
8719if(v==null){
8720if(r[1].substr(-2)=='[]'){
8721if(!v_read)v_read=[];
8722v_read.push((r.length>2&&typeof r[2]!=='undefined')?r[2].substring(1):'');
8723}
8724else{
8725return(r.length>2&&typeof r[2]!=='undefined')?r[2].substring(1):'';
8726}
8727}
8728else if(!v.length){
8729}
8730else if(r[1].substr(-2)!='[]'){
8731na.push(r[1]+'='+u);
8732ajouts.push(r[1]);
8733}
8734}
8735else
8736na.push(args[n]);
8737}
8738if(v==null)return v_read;
8739if(v||v.length||force_vide){
8740ajouts="="+ajouts.join("=")+"=";
8741var all=c.split('|');
8742for(n=0;n<all.length;n++){
8743if(ajouts.search("="+all[n]+"=")==-1){
8744if(typeof(v)!=='object'){
8745na.push(all[n]+'='+u);
8746}
8747else{
8748var id=((all[n].substring(-2)=='[]')?all[n]:all[n]+"[]");
8749for(p=0;p<v.length;p++)
8750na.push(id+'='+encodeURIComponent(v[p]));
8751}
8752}
8753}
8754}
8755if(na.length){
8756if(!sep)sep='&';
8757a=a+"?"+na.join(sep);
8758}
8759return a+ancre;
8760}
8761function spip_logo_survol_hover(){
8762var me=jQuery(this);
8763if(me.attr('data-src-hover')){
8764me.attr('data-src-original',me.attr('src'));
8765me.attr('src',me.attr('data-src-hover'));
8766}
8767}
8768function spip_logo_survol_out(){
8769var me=jQuery(this);
8770if(me.attr('data-src-original')){
8771me.attr('src',me.attr('data-src-original'));
8772}
8773}
8774function disableClickAfterFormSubmit(){
8775if(jQuery(this).is('.processing-submitted-form')){
8776return false;
8777}
8778jQuery(this)
8779.addClass('processing-submitted-form')
8780.find('button[type="submit"]')
8781.attr('disabled','disabled')
8782.addClass('disabled')
8783}
8784function puce_enable_survol(){
8785jQuery('span.puce_objet_popup a',this).not('.puce-survol-enabled').click(function(){
8786selec_statut(jQuery(this).attr('data-puce-id'),jQuery(this).attr('data-puce-type'),jQuery(this).attr('data-puce-decal'),jQuery('img',this).attr('src'),jQuery(this).attr('data-puce-action'));
8787return false;
8788}).addClass('puce-survol-enabled');
8789jQuery('span.puce_objet',this).not('.puce-survol-enabled').mouseover(function(){
8790if(!this.puce_loaded){
8791this.puce_loaded=true;prepare_selec_statut(this,jQuery(this).attr('data-puce-nom'),jQuery(this).attr('data-puce-type'),jQuery(this).attr('data-puce-id'),jQuery(this).attr('data-puce-action'));
8792}
8793}).addClass('puce-survol-enabled');
8794}
8795if(!window.var_zajax_content)
8796window.var_zajax_content='contenu';
8797jQuery(function(){
8798jQuery('form:not(.bouton_action_post)').parents('div.ajax')
8799.formulaire_dyn_ajax();
8800jQuery('div.ajaxbloc').ajaxbloc();
8801jQuery("input[placeholder]:text").placeholderLabel();
8802jQuery('.spip_logo_survol').hover(spip_logo_survol_hover,spip_logo_survol_out);
8803puce_enable_survol.apply(this);
8804jQuery('body').on('submit','form.bouton_action_post',disableClickAfterFormSubmit);
8805});
8806onAjaxLoad(function(){
8807if(jQuery){
8808jQuery('form:not(.bouton_action_post)',this).parents('div.ajax')
8809.formulaire_dyn_ajax();
8810if(jQuery(this).is('div.ajaxbloc'))
8811jQuery(this).ajaxbloc();
8812else if(jQuery(this).closest('div.ajaxbloc').length)
8813jQuery(this).closest('div.ajaxbloc').ajaxbloc();
8814else
8815jQuery('div.ajaxbloc',this).ajaxbloc();
8816jQuery("input[placeholder]:text",this).placeholderLabel();
8817jQuery('.spip_logo_survol',this).hover(spip_logo_survol_hover,spip_logo_survol_out);
8818puce_enable_survol.apply(this);
8819}
8820});
8821
8822
8823/* plugins/alphamosa/javascript/alphamosa-img.js */
8824;(function(){
8825"use strict";
8826document.addEventListener('DOMContentLoaded',function(){
8827function wrapAll(nodes,wrapper){
8828var parent=nodes[0].parentNode;
8829var previousSibling=nodes[0].previousSibling;
8830for(var i=0;nodes.length-i;wrapper.firstChild===nodes[0]&&i++){
8831wrapper.appendChild(nodes[i]);
8832}
8833var nextSibling=previousSibling?previousSibling.nextSibling:parent.firstChild;
8834parent.insertBefore(wrapper,nextSibling);
8835return wrapper;
8836}
8837document.querySelectorAll(':not(.img-spip-ligne) + .img-spip-ligne, * > .img-spip-ligne:first-of-type').forEach(function(el){
8838let els=[];
8839els.push(el);
8840el=el.nextElementSibling;
8841while(el){
8842if(el.matches('.img-spip-ligne')){
8843els.push(el);
8844el=el.nextElementSibling;
8845}else{
8846break;
8847}
8848}
8849let wrapper=document.createElement('div');
8850wrapper.classList.add('img-spip-lignes-container');
8851wrapAll(els,wrapper);
8852});
8853});
8854})();
8855
8856
8857/* local/cache-js/js.cookie-minify-b173.js?1787661585 */
8858
8859!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self,function(){var n=e.Cookies,o=e.Cookies=t();o.noConflict=function(){return e.Cookies=n,o}}())}(this,(function(){"use strict";function e(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)e[o]=n[o]}return e}var t=function t(n,o){function r(t,r,i){if("undefined"!=typeof document){"number"==typeof(i=e({},o,i)).expires&&(i.expires=new Date(Date.now()+864e5*i.expires)),i.expires&&(i.expires=i.expires.toUTCString()),t=encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var c="";for(var u in i)i[u]&&(c+="; "+u,!0!==i[u]&&(c+="="+i[u].split(";")[0]));return document.cookie=t+"="+n.write(r,t)+c}}return Object.create({set:r,get:function(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var t=document.cookie?document.cookie.split("; "):[],o={},r=0;r<t.length;r++){var i=t[r].split("="),c=i.slice(1).join("=");try{var u=decodeURIComponent(i[0]);if(o[u]=n.read(c,u),e===u)break}catch(e){}}return e?o[e]:o}},remove:function(t,n){r(t,"",e({},n,{expires:-1}))},withAttributes:function(n){return t(this.converter,e({},this.attributes,n))},withConverter:function(n){return t(e({},this.converter,n),this.attributes)}},{attributes:{value:Object.freeze(o)},converter:{value:Object.freeze(n)}})}({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"});return t}));
8860
8861
8862/* local/cache-js/sharer-minify-7813.js?1787661585 */
8863
8864(function(window,document){
8865'use strict';
8866var Sharer=function(elem){
8867this.elem=elem;
8868};
8869Sharer.init=function(){
8870var elems=document.querySelectorAll('[data-sharer]'),
8871i,
8872l=elems.length;
8873for(i=0;i<l;i++){
8874elems[i].addEventListener('click',Sharer.add);
8875}
8876};
8877Sharer.add=function(elem){
8878var target=elem.currentTarget||elem.srcElement;
8879var sharer=new Sharer(target);
8880sharer.share();
8881};
8882Sharer.prototype={
8883constructor:Sharer,
8884getValue:function(attr){
8885var val=this.elem.getAttribute('data-'+attr);
8886if(val&&attr==='hashtag'){
8887if(!val.startsWith('#')){
8888val='#'+val;
8889}
8890}
8891return val===null?'':val;
8892},
8893share:function(){
8894var sharer=this.getValue('sharer').toLowerCase(),
8895sharers={
8896facebook:{
8897shareUrl:'https://www.facebook.com/sharer/sharer.php',
8898params:{
8899u:this.getValue('url'),
8900hashtag:this.getValue('hashtag'),
8901quote:this.getValue('quote'),
8902},
8903},
8904linkedin:{
8905shareUrl:'https://www.linkedin.com/shareArticle',
8906params:{
8907url:this.getValue('url'),
8908mini:true,
8909},
8910},
8911twitter:{
8912shareUrl:'https://twitter.com/intent/tweet/',
8913params:{
8914text:this.getValue('title'),
8915url:this.getValue('url'),
8916hashtags:this.getValue('hashtags'),
8917via:this.getValue('via'),
8918},
8919},
8920email:{
8921shareUrl:'mailto:'+this.getValue('to'),
8922params:{
8923subject:this.getValue('subject'),
8924body:this.getValue('title')+'\n'+this.getValue('url'),
8925},
8926},
8927},
8928s=sharers[sharer];
8929if(s){
8930s.width=this.getValue('width');
8931s.height=this.getValue('height');
8932}
8933return s!==undefined?this.urlSharer(s):false;
8934},
8935urlSharer:function(sharer){
8936var p=sharer.params||{},
8937keys=Object.keys(p),
8938i,
8939str=keys.length>0?'?':'';
8940for(i=0;i<keys.length;i++){
8941if(str!=='?'){
8942str+='&';
8943}
8944if(p[keys[i]]){
8945str+=keys[i]+'='+encodeURIComponent(p[keys[i]]);
8946}
8947}
8948sharer.shareUrl+=str;
8949var isLink=this.getValue('link')==='true';
8950var isBlank=this.getValue('blank')==='true';
8951if(isLink){
8952if(isBlank){
8953window.open(sharer.shareUrl,'_blank');
8954}else{
8955window.location.href=sharer.shareUrl;
8956}
8957}else{
8958console.log(sharer.shareUrl);
8959var popWidth=sharer.width||600,
8960popHeight=sharer.height||480,
8961left=window.innerWidth/2-popWidth/2+window.screenX,
8962top=window.innerHeight/2-popHeight/2+window.screenY,
8963popParams='scrollbars=no, width='+popWidth+', height='+popHeight+', top='+top+', left='+left,
8964newWindow=window.open(sharer.shareUrl,'',popParams);
8965if(window.focus){
8966newWindow.focus();
8967}
8968}
8969},
8970};
8971if(document.readyState==='complete'||document.readyState!=='loading'){
8972Sharer.init();
8973}else{
8974document.addEventListener('DOMContentLoaded',Sharer.init);
8975}
8976window.Sharer=Sharer;
8977})(window,document);
8978
8979
8980/* local/cache-js/minimasonry-minify-5a47.js?1787661585 */
8981
8982var MiniMasonry=function(){"use strict";function t(t){return this._sizes=[],this._columns=[],this._container=null,this._count=null,this._width=0,this._removeListener=null,this._currentGutterX=null,this._currentGutterY=null,this._resizeTimeout=null,this.conf={baseWidth:255,gutterX:null,gutterY:null,gutter:10,container:null,minify:!0,ultimateGutter:5,surroundingGutter:!0,direction:"ltr",wedge:!1},this.init(t),this}return t.prototype.init=function(t){for(var i in this.conf)null!=t[i]&&(this.conf[i]=t[i]);if(null!=this.conf.gutterX&&null!=this.conf.gutterY||(this.conf.gutterX=this.conf.gutterY=this.conf.gutter),this._currentGutterX=this.conf.gutterX,this._currentGutterY=this.conf.gutterY,this._container="object"==typeof this.conf.container&&this.conf.container.nodeName?this.conf.container:document.querySelector(this.conf.container),!this._container)throw new Error("Container not found or missing");var e=this.resizeThrottler.bind(this);window.addEventListener("resize",e),this._removeListener=function(){window.removeEventListener("resize",e),null!=this._resizeTimeout&&(window.clearTimeout(this._resizeTimeout),this._resizeTimeout=null)},this.layout()},t.prototype.reset=function(){this._sizes=[],this._columns=[],this._count=null,this._width=this._container.clientWidth;var t=this.conf.baseWidth;this._width<t&&(this._width=t,this._container.style.minWidth=t+"px"),1==this.getCount()?(this._currentGutterX=this.conf.ultimateGutter,this._count=1):this._width<this.conf.baseWidth+2*this._currentGutterX?this._currentGutterX=0:this._currentGutterX=this.conf.gutterX},t.prototype.getCount=function(){return this.conf.surroundingGutter?Math.floor((this._width-this._currentGutterX)/(this.conf.baseWidth+this._currentGutterX)):Math.floor((this._width+this._currentGutterX)/(this.conf.baseWidth+this._currentGutterX))},t.prototype.computeWidth=function(){var t=this.conf.surroundingGutter?(this._width-this._currentGutterX)/this._count-this._currentGutterX:(this._width+this._currentGutterX)/this._count-this._currentGutterX;return t=Number.parseFloat(t.toFixed(2))},t.prototype.layout=function(){if(this._container){this.reset(),null==this._count&&(this._count=this.getCount());for(var t=this.computeWidth(),i=0;i<this._count;i++)this._columns[i]=0;for(var e,n,r=this._container.children,s=0;s<r.length;s++)r[s].style.width=t+"px",this._sizes[s]=r[s].clientHeight;e="ltr"==this.conf.direction?this.conf.surroundingGutter?this._currentGutterX:0:this._width-(this.conf.surroundingGutter?this._currentGutterX:0),this._count>this._sizes.length&&(n=this._sizes.length*(t+this._currentGutterX)-this._currentGutterX,!1===this.conf.wedge?e="ltr"==this.conf.direction?(this._width-n)/2:this._width-(this._width-n)/2:"ltr"==this.conf.direction||(e=this._width-this._currentGutterX));for(var o=0;o<r.length;o++){var h=this.conf.minify?this.getShortest():this.getNextColumn(o),u=0;!this.conf.surroundingGutter&&h==this._columns.length||(u=this._currentGutterX);var c="ltr"==this.conf.direction?e+(t+u)*h:e-(t+u)*h-t,u=this._columns[h];r[o].style.transform="translate3d("+Math.round(c)+"px,"+Math.round(u)+"px,0)",this._columns[h]+=this._sizes[o]+(1<this._count?this.conf.gutterY:this.conf.ultimateGutter)}this._container.style.height=this._columns[this.getLongest()]-this._currentGutterY+"px"}else console.error("Container not found")},t.prototype.getNextColumn=function(t){return t%this._columns.length},t.prototype.getShortest=function(){for(var t=0,i=0;i<this._count;i++)this._columns[i]<this._columns[t]&&(t=i);return t},t.prototype.getLongest=function(){for(var t=0,i=0;i<this._count;i++)this._columns[i]>this._columns[t]&&(t=i);return t},t.prototype.resizeThrottler=function(){this._resizeTimeout||(this._resizeTimeout=setTimeout(function(){this._resizeTimeout=null,this._container.clientWidth!=this._width&&this.layout()}.bind(this),33))},t.prototype.destroy=function(){"function"==typeof this._removeListener&&this._removeListener();for(var t=this._container.children,i=0;i<t.length;i++)t[i].style.removeProperty("width"),t[i].style.removeProperty("transform");this._container.style.removeProperty("height"),this._container.style.removeProperty("min-width")},t}();
8983
8984

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.