diff --git a/gen/basic-5JVEE6LO.js b/gen/basic-PEJWFOJ6.js similarity index 99% rename from gen/basic-5JVEE6LO.js rename to gen/basic-PEJWFOJ6.js index 3ebd7fa0..efae4308 100644 --- a/gen/basic-5JVEE6LO.js +++ b/gen/basic-PEJWFOJ6.js @@ -1,4 +1,4 @@ -import{b as v}from"./chunk-3XE5YOCV.js";import{a as d,o as S}from"./chunk-4TWVHUDP.js";import"./chunk-SXEVG2WS.js";import"./chunk-5SHCNQ2O.js";import"./chunk-4PJ2B2TK.js";import"./chunk-HB3LWF25.js";import{A as c,J as b,S as g,T as f,a as p}from"./chunk-ATS7PSQG.js";import"./chunk-5XVCUSSZ.js";function O(o){return o.value!=null}function E(o){return o.name!=null}function N(o){return o.op!=null&&o.left!=null&&o.right!=null}function I(o){return o.op!=null&&o.expr!=null}var y=class{randomize(){this.seed(Math.random()*2147483647,Math.random()*2147483647,Math.random()*2147483647,Math.random()*2147483647)}constructor(){(()=>{var r,e,i,n;this.seed=function(s,a,u,h){r=s,e=a,i=u,n=h},this.seedfloat=function(s){this.seed(s,s*4294,s*429496,s*4294967296),this.next(),this.next(),this.next()},this.next=function(){r>>>=0,e>>>=0,i>>>=0,n>>>=0;var s=r+e|0;return r=e^e>>>9,e=i+(i<<3)|0,i=i<<21|i>>>11,n=n+1|0,s=s+n|0,i=i+s|0,(s>>>0)/4294967296}})(),this.seedfloat(-1)}},L=1024*1024,l=class{constructor(){this.margin=80;this.running=!1;this.exited=!0;this.trace=!1}load(t){let r=null,e=0;if(this.pc2label!=null){let s=this.curpc;for(;s>0&&(r=this.pc2label.get(s))==null;)s--;e=this.curpc-s,console.log("oldpc=",this.curpc,"restart @ label",r,"+",e)}this.program=t,this.opts=t.opts,this.opts.maxArrayElements||(this.opts.maxArrayElements=L),this.allstmts=t.stmts,this.label2pc=t.labels,this.label2dataptr={},this.pc2label=new Map,this.datums=[],this.subroutines={},this.builtins=this.getBuiltinFunctions();for(var i in t.labels){var n=t.labels[i];this.pc2label.set(n,i)}return this.allstmts.forEach((s,a)=>{this.curpc=a+1,this.compileStatement(s),s.command=="DATA"&&(this.label2dataptr[s.$loc.label]=this.datums.length,s.datums.forEach(u=>{this.curpc=s.$loc.offset,this.datums.push(u)}))}),this.label2pc[r]!=null?(this.curpc=this.label2pc[r]+e,!0):(this.curpc=0,!1)}reset(){this.curpc=0,this.dataptr=0,this.clearVars(),this.returnStack=[],this.column=0,this.running=!0,this.exited=!1}clearVars(){this.globals=this.vars={},this.arrays={},this.defs={},this.forLoops={},this.forLoopStack=[],this.whileLoops=[],this.rng=new y,this.opts&&this.opts.staticArrays&&this.allstmts.filter(t=>t.command=="DIM").forEach(t=>{t.args.forEach(r=>this.compileJS(this._DIM(r))())})}saveState(){return $.extend(!0,{},this)}loadState(t){$.extend(!0,this,t)}getBuiltinFunctions(){var t=this.program&&this.opts.validFunctions;t||(t=Object.getOwnPropertyNames(l.prototype).filter(i=>/^[A-Z]{3,}[$]?$/.test(i)));var r={};for(var e of t)this.supportsFunction(e)&&(r[e]=this[e].bind(this));return r}supportsFunction(t){return typeof this[t]=="function"}runtimeError(t){throw this.curpc--,new g(t,this.getCurrentSourceLocation())}dialectError(t){this.runtimeError(`I can't ${t} in this dialect of BASIC.`)}getLineForPC(t){var r=this.allstmts[t];return r&&r.$loc&&r.$loc.line}getLabelForPC(t){var r=this.allstmts[t];return r&&r.$loc&&r.$loc.label}getCurrentSourceLocation(){var t=this.getStatement();return t&&t.$loc}getCurrentLabel(){var t=this.getCurrentSourceLocation();return t&&t.label}getStatement(){return this.allstmts[this.curpc]}step(){if(!this.running)return!1;var t=this.getStatement();return t?(this.trace&&console.log(this.curpc,t,this.vars,Object.keys(this.arrays)),this.curpc++,this.executeStatement(t),this.running):(this.running=!1,this.exited=!0,!1)}compileStatement(t){if(t.$run==null)try{var r=this["do__"+t.command];r==null&&this.runtimeError(`I don't know how to "${t.command}".`);var e=r.bind(this)(t);this.trace&&console.log(e),t.$run=this.compileJS(e)}catch(i){throw e&&console.log(e),i}}compileJS(t){return new Function(t).bind(this)}executeStatement(t){this.compileStatement(t),t.$run()}skipToEOL(){do this.curpc++;while(this.curpc=0?this.curpc=r:this.runtimeError(`I tried to go to the label "${t}" but couldn't find it.`)}newLocalScope(){this.vars=Object.create(this.vars)}popLocalScope(){this.vars!==this.globals&&(this.vars=Object.getPrototypeOf(this.vars))}gosubLabel(t){this.returnStack.length>32767&&this.runtimeError("I did too many GOSUBs without a RETURN."),this.returnStack.push(this.curpc),this.gotoLabel(t)}returnFromGosub(){this.returnStack.length==0&&this.runtimeError("I tried to RETURN, but there wasn't a corresponding GOSUB.");var t=this.returnStack.pop();this.curpc=t,this.popLocalScope()}popReturnStack(){this.returnStack.length==0&&this.runtimeError("I tried to POP, but there wasn't a corresponding GOSUB."),this.returnStack.pop()}valueToString(t,r){var e;if(typeof t=="number"){var i=this.float2str(t,this.opts.printZoneLength-4);return r?i.startsWith("-")?`${i} `:` ${i} `:i}else if(t==` +import{b as v}from"./chunk-3XE5YOCV.js";import{a as d,o as S}from"./chunk-R63KYPGV.js";import"./chunk-SXEVG2WS.js";import"./chunk-5SHCNQ2O.js";import"./chunk-Z2IKIN54.js";import"./chunk-HB3LWF25.js";import{A as c,J as b,S as g,T as f,a as p}from"./chunk-ATS7PSQG.js";import"./chunk-5XVCUSSZ.js";function O(o){return o.value!=null}function E(o){return o.name!=null}function N(o){return o.op!=null&&o.left!=null&&o.right!=null}function I(o){return o.op!=null&&o.expr!=null}var y=class{randomize(){this.seed(Math.random()*2147483647,Math.random()*2147483647,Math.random()*2147483647,Math.random()*2147483647)}constructor(){(()=>{var r,e,i,n;this.seed=function(s,a,u,h){r=s,e=a,i=u,n=h},this.seedfloat=function(s){this.seed(s,s*4294,s*429496,s*4294967296),this.next(),this.next(),this.next()},this.next=function(){r>>>=0,e>>>=0,i>>>=0,n>>>=0;var s=r+e|0;return r=e^e>>>9,e=i+(i<<3)|0,i=i<<21|i>>>11,n=n+1|0,s=s+n|0,i=i+s|0,(s>>>0)/4294967296}})(),this.seedfloat(-1)}},L=1024*1024,l=class{constructor(){this.margin=80;this.running=!1;this.exited=!0;this.trace=!1}load(t){let r=null,e=0;if(this.pc2label!=null){let s=this.curpc;for(;s>0&&(r=this.pc2label.get(s))==null;)s--;e=this.curpc-s,console.log("oldpc=",this.curpc,"restart @ label",r,"+",e)}this.program=t,this.opts=t.opts,this.opts.maxArrayElements||(this.opts.maxArrayElements=L),this.allstmts=t.stmts,this.label2pc=t.labels,this.label2dataptr={},this.pc2label=new Map,this.datums=[],this.subroutines={},this.builtins=this.getBuiltinFunctions();for(var i in t.labels){var n=t.labels[i];this.pc2label.set(n,i)}return this.allstmts.forEach((s,a)=>{this.curpc=a+1,this.compileStatement(s),s.command=="DATA"&&(this.label2dataptr[s.$loc.label]=this.datums.length,s.datums.forEach(u=>{this.curpc=s.$loc.offset,this.datums.push(u)}))}),this.label2pc[r]!=null?(this.curpc=this.label2pc[r]+e,!0):(this.curpc=0,!1)}reset(){this.curpc=0,this.dataptr=0,this.clearVars(),this.returnStack=[],this.column=0,this.running=!0,this.exited=!1}clearVars(){this.globals=this.vars={},this.arrays={},this.defs={},this.forLoops={},this.forLoopStack=[],this.whileLoops=[],this.rng=new y,this.opts&&this.opts.staticArrays&&this.allstmts.filter(t=>t.command=="DIM").forEach(t=>{t.args.forEach(r=>this.compileJS(this._DIM(r))())})}saveState(){return $.extend(!0,{},this)}loadState(t){$.extend(!0,this,t)}getBuiltinFunctions(){var t=this.program&&this.opts.validFunctions;t||(t=Object.getOwnPropertyNames(l.prototype).filter(i=>/^[A-Z]{3,}[$]?$/.test(i)));var r={};for(var e of t)this.supportsFunction(e)&&(r[e]=this[e].bind(this));return r}supportsFunction(t){return typeof this[t]=="function"}runtimeError(t){throw this.curpc--,new g(t,this.getCurrentSourceLocation())}dialectError(t){this.runtimeError(`I can't ${t} in this dialect of BASIC.`)}getLineForPC(t){var r=this.allstmts[t];return r&&r.$loc&&r.$loc.line}getLabelForPC(t){var r=this.allstmts[t];return r&&r.$loc&&r.$loc.label}getCurrentSourceLocation(){var t=this.getStatement();return t&&t.$loc}getCurrentLabel(){var t=this.getCurrentSourceLocation();return t&&t.label}getStatement(){return this.allstmts[this.curpc]}step(){if(!this.running)return!1;var t=this.getStatement();return t?(this.trace&&console.log(this.curpc,t,this.vars,Object.keys(this.arrays)),this.curpc++,this.executeStatement(t),this.running):(this.running=!1,this.exited=!0,!1)}compileStatement(t){if(t.$run==null)try{var r=this["do__"+t.command];r==null&&this.runtimeError(`I don't know how to "${t.command}".`);var e=r.bind(this)(t);this.trace&&console.log(e),t.$run=this.compileJS(e)}catch(i){throw e&&console.log(e),i}}compileJS(t){return new Function(t).bind(this)}executeStatement(t){this.compileStatement(t),t.$run()}skipToEOL(){do this.curpc++;while(this.curpc=0?this.curpc=r:this.runtimeError(`I tried to go to the label "${t}" but couldn't find it.`)}newLocalScope(){this.vars=Object.create(this.vars)}popLocalScope(){this.vars!==this.globals&&(this.vars=Object.getPrototypeOf(this.vars))}gosubLabel(t){this.returnStack.length>32767&&this.runtimeError("I did too many GOSUBs without a RETURN."),this.returnStack.push(this.curpc),this.gotoLabel(t)}returnFromGosub(){this.returnStack.length==0&&this.runtimeError("I tried to RETURN, but there wasn't a corresponding GOSUB.");var t=this.returnStack.pop();this.curpc=t,this.popLocalScope()}popReturnStack(){this.returnStack.length==0&&this.runtimeError("I tried to POP, but there wasn't a corresponding GOSUB."),this.returnStack.pop()}valueToString(t,r){var e;if(typeof t=="number"){var i=this.float2str(t,this.opts.printZoneLength-4);return r?i.startsWith("-")?`${i} `:` ${i} `:i}else if(t==` `)this.column=0,e=t;else if(t==" "){var n=this.opts.printZoneLength,s=Math.floor(this.column/n),a=(s+1)*this.opts.printZoneLength;a+n>this.margin?(this.column=0,e=` `):e=this.TAB(a)}else e=`${t}`;return e}float2str(t,r){var e=t.toString().toUpperCase();if(r>0){for(var i=r;e.length>r;)e=t.toPrecision(i--);e.startsWith("0.")?e=e.substr(1):e.startsWith("-0.")&&(e="-"+e.substr(2))}return e}printExpr(t){var r=this.valueToString(t,this.opts.numericPadding);this.column+=r.length,this.print(r)}print(t){console.log(t)}async input(t,r){return{line:"",vals:[]}}resume(){}expr2js(t,r){if(r||(r={}),O(t))return JSON.stringify(t.value);if(E(t)){if(!t.args&&r.locals&&r.locals.indexOf(t.name)>=0)return t.name;{r.isconst&&this.runtimeError("I expected a constant value here.");var e="",i=JSON.stringify(t.name);let u=t.args?t.args.map(h=>this.expr2js(h,r)).join(", "):[];return t.name.startsWith("FN")?e+=`this.getDef(${i})(${u})`:this.builtins[t.name]?(this.checkFuncArgs(t,this.builtins[t.name]),e+=`this.builtins.${t.name}(${u})`):t.args?this.opts.arraysContainChars&&t.name.endsWith("$")?e+=`this.getStringSlice(this.vars.${t.name}, ${u})`:e+=`this.arrayGet(${i}, ${u})`:e+=`this.vars.${t.name}`,r.novalid?e:`this.checkValue(${e}, ${i})`}}else if(N(t)){var n=this.expr2js(t.left,r),s=this.expr2js(t.right,r);return`this.${t.op}(${n}, ${s})`}else if(I(t)){var a=this.expr2js(t.expr,r);return`this.${t.op}(${a})`}}assign2js(t,r){r||(r={});var e="";return(t.name.startsWith("FN")||this.builtins[t.name])&&this.runtimeError("I can't call a function here."),t.args?this.opts.arraysContainChars&&t.name.endsWith("$")?this.runtimeError("I can't set array slices via this command yet."):e+=this.array2js(t,r):e=`this.globals.${t.name}`,e}array2js(t,r){var e=JSON.stringify(t.name),i=t.args||[];return this.expr2js(t,{novalid:!0})+`;this.getArray(${e}, ${i.length})`+i.map(n=>"[this.ROUND("+this.expr2js(n,r)+")]").join("")}checkFuncArgs(t,r){var e=t.args?t.args.length:0;t.name=="RND"&&e==0||t.name=="MID$"&&e==2||t.name=="INSTR"&&e==2||r.length!=e&&this.runtimeError(`I expected ${r.length} arguments for the ${t.name} function, but I got ${e}.`)}startForLoop(t,r,e,i,n){var s=this.curpc-1,a=this.pc2label.get(s);i||(i=1),this.vars[t]=r,this.trace&&console.log(`FOR ${t} = ${r} TO ${e} STEP ${i}`);var u=()=>i>=0?this.vars[t]>e:this.vars[t]h==t)),this.forLoopStack.push(t),this.forLoops[t]={$next:h=>{h&&t!=h&&this.runtimeError(`I executed NEXT "${h}", but the last FOR was for "${t}".`),this.vars[t]+=i;var m=u();m?(this.forLoopStack.pop(),delete this.forLoops[t]):this.curpc=(a!=null&&this.label2pc[a]||s)+1,this.trace&&console.log(`NEXT ${t}: ${this.vars[t]} TO ${e} STEP ${i} DONE=${m}`)}}}nextForLoop(t){var r=this.forLoops[t||this.opts.optionalNextVar&&this.forLoopStack[this.forLoopStack.length-1]];r||this.runtimeError("I couldn't find a matching FOR for this NEXT."),r.$next(t)}whileLoop(t){t?this.whileLoops.push(this.curpc-1):this.skipToAfterWend()}nextWhileLoop(){var t=this.whileLoops.pop();t==null?this.runtimeError("I couldn't find a matching WHILE for this WEND."):this.curpc=t}assign(t,r,e){return e&&t.endsWith("$")?this.checkValue(this.convert(t,r),t):t.endsWith("$")?this.convertToString(r,t):this.convertToNumber(r,t)}convert(t,r){return t.endsWith("$")?r==null?"":r.toString():typeof r=="number"?r:parseFloat(r+"")}convertToString(t,r){if(typeof t!="string")this.runtimeError(`I can't convert ${t} to a string.`);else return t}convertToNumber(t,r){if(typeof t!="number")this.runtimeError(`I can't convert ${t} to a number.`);else return this.checkNum(t)}dimArray(t,...r){if(r=r.map(Math.round),this.arrays[t]!=null){if(this.opts.staticArrays)return;this.runtimeError(`I already dimensioned this array (${t}) earlier.`)}var e=this.getTotalArrayLength(r);e>this.opts.maxArrayElements&&this.runtimeError("I can't create an array with this many elements.");var i=t.endsWith("$"),n=i?Array:Float64Array;if(r.length==1)this.arrays[t]=new n(r[0]+1);else if(r.length==2){this.arrays[t]=new Array(r[0]+1);for(var s=0;s=i.length&&this.runtimeError(`I tried to lookup ${t}(${r}) but it exceeded the dimensions of the array.`),i=i[r[n]]}return c(i)&&this.runtimeError(`I tried to lookup ${t}(${r}) but used too few dimensions.`),i}modifyStringSlice(t,r,e,i){return t=t||"",this.checkString(t),this.checkString(r),i||(i=e),e=this.ROUND(e),i=this.ROUND(i),e<1&&this.dialectError("accept a string slice index less than 1"),ir.length)&&this.runtimeError(`I needed a number between 1 and ${r.length}, but I got ${t}.`),t<1||t>r.length?0:t}onGotoLabel(t,...r){t=this.checkOnGoto(t,r),t&&this.gotoLabel(r[t-1])}onGosubLabel(t,...r){t=this.checkOnGoto(t,r),t&&this.gosubLabel(r[t-1])}nextDatum(){return this.dataptr>=this.datums.length&&this.runtimeError("I tried to READ, but ran out of data."),this.datums[this.dataptr++].value}do__PRINT(t){var r="";for(var e of t.args){var i=this.expr2js(e),n=i.name;r+=`this.printExpr(this.checkValue(${i}, ${JSON.stringify(n)}));`}return r}preInput(){this.running=!1,this.curpc--}postInput(t){t&&this.curpc++,this.running=!0,this.resume()}do__INPUT(t){var r=t.prompt!=null?this.expr2js(t.prompt):'""',e=t.elapsed!=null?this.assign2js(t.elapsed):"let ___",i="";return t.args.forEach((n,s)=>{var a=this.assign2js(n);i+=` var value = this.convert(${JSON.stringify(n.name)}, response.vals[${s}]); @@ -34,4 +34,4 @@ import{b as v}from"./chunk-3XE5YOCV.js";import{a as d,o as S}from"./chunk-4TWVHU `),this.tty.addtext("*** END OF PROGRAM ***",1),this.tty.showPrintHead(!1)}loadROM(t,r){var e=this.runtime.exited;this.program=r;var i=this.runtime.load(r);this.tty.uppercaseOnly=!0,d.input=this.program.opts.uppercaseOnly?n=>n.toUpperCase():null,(!this.hotReload||e||!i)&&this.reset()}getROMExtension(){return".json"}reset(){this.tty.clear(),this.runtime.reset(),this.clock=0,this.transcript=[]}pause(){this.timer.stop()}resume(){this.isBlocked()||(this.animcount=0,this.timer.start())}isBlocked(){return this.tty.waitingfor!=null||this.runtime.exited}isRunning(){return this.timer.isRunning()}getDefaultExtension(){return".bas"}getToolForFilename(){return"basic"}getPresets(){return T}getPC(){return this.runtime.curpc}getSP(){return 4096-this.runtime.returnStack.length}isStable(){return!0}getCPUState(){return{PC:this.getPC(),SP:this.getSP()}}saveState(){return{c:this.getCPUState(),rt:this.runtime.saveState()}}loadState(t){this.runtime.loadState(t)}getDebugTree(){return{CurrentLine:this.runtime.getCurrentLabel(),Variables:this.runtime.vars,Arrays:this.runtime.arrays,Functions:this.runtime.defs,ForLoops:this.runtime.forLoops,WhileLoops:this.runtime.whileLoops,ReturnStack:this.runtime.returnStack,NextDatum:this.runtime.datums[this.runtime.dataptr],Clock:this.clock,Options:this.runtime.opts,Internals:this.runtime}}inspect(t){let r=this.runtime.vars[t];if(r!=null)return`${t} = ${r}`}showHelp(){return"https://8bitworkshop.com/docs/platforms/basic/"}getDebugCategories(){return["Variables"]}getDebugInfo(t,r){switch(t){case"Variables":return this.varsToLongString()}}varsToLongString(){var t="",r=Object.keys(this.runtime.vars);r.sort();for(var e of r){var i=this.runtime.vars[e],n=JSON.stringify(i);n.length>24&&(n=`${n.substr(0,24)}...(${n.length})`),t+=p(e,3)+" = "+n+` `}return t}setupDebug(t){this.onBreakpointHit=t}clearDebug(){this.onBreakpointHit=null,this.debugTrap=null}checkDebugTrap(){return this.debugTrap&&this.debugTrap()?(this.pause(),this.break(),!0):!1}break(){this.onBreakpointHit&&this.onBreakpointHit(this.saveState())}step(){var t=this.clock;this.debugTrap=()=>this.clock>t,this.resume()}stepOver(){var t=this.runtime.getStatement();if(t&&(t.command=="GOSUB"||t.command=="ONGOSUB")){var r=this.getPC()+1;this.runEval(()=>this.getPC()==r)}else this.step()}runUntilReturn(){var t=this.getSP();this.runEval(()=>this.getSP()>t)}runEval(t){this.debugTrap=()=>t(this.getCPUState()),this.resume()}restartAtPC(t){return t=Math.round(t),t>=0&&t>4)*1024,h=s.vic[17]&32,A=(s.cia2[0]&1)==1&&(s.vic[24]&12)==4,R=s.state[244],$=this.getRasterY();return i+="Mode:",s.vic[17]&32?i+=" BITMAP":i+=" CHAR",s.vic[22]&16&&(i+=" MULTICOLOR"),s.vic[17]&64&&(i+=" EXTENDED"),i+=` +`,i+=`Raster: (${l(R,3)}, ${l($,3)}) `,i+=`Scroll: (${s.vic[22]&7}, ${s.vic[17]&7})`,i+=` +`,i+=`VIC Bank: $${o(r,4)} Scrn: $${o(m,4)} `,h?i+=`Bitmap: $${o(c&57344,4)}`:A?i+=`Char: ROM $${o(c,4)}`:i+=`Char: $${o(c,4)}`,i+=` +`,i+=p(t,53248,64),i}case"SID":{let t=s.sid,i="";return i+=p(t,54272,32),i}}}setPaddleInput(e,s){e==0&&(this.lightpen_x=s),e==1&&(this.lightpen_y=s);let t=22,i=36,r=228,c=220,m=x(0,255,(this.lightpen_x-t)/(r-t)*160+24),h=x(0,255,(this.lightpen_y-i)/(c-i)*200+50);this.exports.machine_set_mouse(this.sys,m,h)}};var v=[{id:"hello.dasm",name:"Hello World (ASM)"},{id:"23matches.c",name:"23 Matches"},{id:"tgidemo.c",name:"TGI Graphics Demo"},{id:"upandaway.c",name:"Up, Up and Away"},{id:"siegegame.c",name:"Siege Game"},{id:"joymove.c",name:"Sprite Movement"},{id:"sprite_collision.c",name:"Sprite Collision"},{id:"scroll1.c",name:"Scrolling (Single Buffer)"},{id:"scroll2.c",name:"Scrolling (Double Buffer)"},{id:"scroll3.c",name:"Scrolling (Multidirectional)"},{id:"scroll4.c",name:"Scrolling (Color RAM Buffering)"},{id:"scroll5.c",name:"Scrolling (Camera Following)"},{id:"side_scroller.c",name:"Side-Scrolling Game"},{id:"fullscrollgame.c",name:"Full-Scrolling Game"},{id:"test_multiplex.c",name:"Sprite Retriggering"},{id:"test_multispritelib.c",name:"Sprite Multiplexing Library"},{id:"scrolling_text.c",name:"Big Scrolling Text"},{id:"mcbitmap.c",name:"Multicolor Bitmap Mode"},{id:"musicplayer.c",name:"Music Player"},{id:"siddemo.c",name:"SID Player Demo"},{id:"climber.c",name:"Climber Game"}],y={main:[{name:"6510 Registers",start:0,size:2,type:"io"},{name:"BIOS Reserved",start:512,size:167},{name:"Default Screen RAM",start:1024,size:1024,type:"ram"},{name:"Cartridge ROM",start:32768,size:8192,type:"rom"},{name:"BASIC ROM",start:40960,size:8192,type:"rom"},{name:"Upper RAM",start:49152,size:4096,type:"ram"},{name:"Character ROM",start:53248,size:4096,type:"rom"},{name:"VIC-II I/O",start:53248,size:1024,type:"io"},{name:"SID",start:54272,size:1024,type:"io"},{name:"Color RAM",start:55296,size:1024,type:"io"},{name:"CIA 1",start:56320,size:256,type:"io"},{name:"CIA 2",start:56576,size:256,type:"io"},{name:"I/O 1",start:56832,size:256,type:"io"},{name:"I/O 2",start:57088,size:256,type:"io"},{name:"KERNAL ROM",start:57344,size:8192,type:"rom"}]},d=class extends _{newMachine(){return new f("c64")}getPresets(){return v}getDefaultExtension(){return".c"}readAddress(e){return this.machine.readConst(e)}getMemoryMap(){return y}showHelp(){return"https://8bitworkshop.com/docs/platforms/c64/"}getROMExtension(e){return e&&e[0]==1&&e[1]==8?".prg":".bin"}},C=class extends M{constructor(){super(...arguments);this.getToolForFilename=b;this.getOpcodeMetadata=S}getPresets(){return v}getDefaultExtension(){return".c"}loadROM(e,s){if(!this.started)this.startModule(this.mainElement,{jsfile:"mame8bitpc.js",biosfile:"c64.zip",cfgfile:"c64.cfg",driver:"c64",width:418,height:235,romfn:"/emulator/image.crt",romdata:new Uint8Array(s),romsize:65536,extraargs:["-autoboot_delay","5","-autoboot_command",`load "$",8,1 +`],preInit:function(i){}});else{this.loadROMFile(s),this.loadRegion(":quickload",s);var t=this.luacall('image:load("/emulator/image.prg")');console.log("load rom",t)}}start(){}getMemoryMap(){return y}};n.c64=d;n["c64.wasm"]=d;n["c64.mame"]=C; +//# sourceMappingURL=c64-5MCMD5YC.js.map diff --git a/gen/c64-5MCMD5YC.js.map b/gen/c64-5MCMD5YC.js.map new file mode 100644 index 00000000..2cbd9ece --- /dev/null +++ b/gen/c64-5MCMD5YC.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../src/machine/c64.ts", "../src/platform/c64.ts"], + "sourcesContent": ["\nimport { AcceptsPaddleInput, Probeable } from \"../common/devices\";\nimport { dumpRAM, KeyFlags } from \"../common/emu\";\nimport { clamp, hex, lpad } from \"../common/util\";\n\n// https://www.c64-wiki.com/wiki/C64\n// http://www.zimmers.net/cbmpics/cbm/c64/vic-ii.txt\n// http://www.zimmers.net/cbmpics/cbm/c64/c64prg.txt\n// http://sta.c64.org/cbm64mem.html\n// http://hitmen.c02.at/temp/palstuff/\n\n//// WASM Machine\n\nimport { Machine } from \"../common/baseplatform\";\nimport { TrapCondition } from \"../common/devices\";\nimport { BaseWASMMachine } from \"../common/wasmplatform\";\n\nexport class C64_WASMMachine extends BaseWASMMachine \n implements Machine, Probeable, AcceptsPaddleInput {\n\n numTotalScanlines = 312;\n cpuCyclesPerLine = 63;\n\n prgstart : number;\n joymask0 = 0;\n joymask1 = 0;\n lightpen_x = 0;\n lightpen_y = 0;\n\n loadBIOS(srcArray: Uint8Array) {\n var patch1ofs = 0xea24 - 0xe000 + 0x3000;\n /*if (srcArray[patch1ofs] == 0x02)*/ srcArray[patch1ofs] = 0x60; // cursor move, KIL -> RTS\n super.loadBIOS(srcArray);\n }\n reset() {\n super.reset();\n // clear keyboard\n for (var ch=0; ch<128; ch++) {\n this.exports.machine_key_up(this.sys, ch);\n }\n // load rom\n if (this.romptr && this.romlen) {\n this.exports.machine_load_rom(this.sys, this.romptr, this.romlen);\n this.prgstart = this.romarr[0] + (this.romarr[1]<<8); // get load address\n // look for BASIC program start\n if (this.prgstart == 0x801) {\n // decode SYS address from decimal?\n if (this.romarr[6] == 0x9e) {\n var addr = 0;\n for (var i=0; i<5; i++) {\n var ch = this.romarr[7+i];\n if (ch == 0x9b || ch == 0) break;\n addr = addr * 10 + (ch & 0xf);\n }\n this.prgstart = addr;\n console.log(\"SYS\", addr, hex(addr));\n } else {\n this.prgstart = this.romarr[2] + (this.romarr[3]<<8) + 2; // point to after BASIC program\n console.log(\"RUN\", this.prgstart, hex(this.prgstart));\n }\n }\n // is program loaded into RAM?\n if (this.prgstart < 0x8000) {\n // advance BIOS a few frames\n this.exports.machine_exec(this.sys, 250000);\n // type in command (SYS 2061)\n var cmd = \"\\rSYS \"+this.prgstart;\n for (var i=0; i ,\n case 191: key = flags & KeyFlags.Shift ? 0x3f : 0x2f; break; // ? /\n case 222: key = flags & KeyFlags.Shift ? 0x22 : 0x27; break; // \" '\n case 219: key = flags & KeyFlags.Shift ? 0x7b : 0x5b; break; // [\n case 221: key = flags & KeyFlags.Shift ? 0x7d : 0x5d; break; // ]\n case 48: if (flags & KeyFlags.Shift) key = 0x29; break; // )\n case 49: if (flags & KeyFlags.Shift) key = 0x21; break; // !\n case 50: if (flags & KeyFlags.Shift) key = 0x40; break; // @\n case 51: if (flags & KeyFlags.Shift) key = 0x23; break; // #\n case 52: if (flags & KeyFlags.Shift) key = 0x24; break; // $\n case 53: if (flags & KeyFlags.Shift) key = 0x25; break; // %\n case 54: if (flags & KeyFlags.Shift) key = 0x5e; break; // ^\n case 55: if (flags & KeyFlags.Shift) key = 0x26; break; // &\n case 56: if (flags & KeyFlags.Shift) key = 0x2a; break; // *\n case 57: if (flags & KeyFlags.Shift) key = 0x28; break; // (\n case 59: if (flags & KeyFlags.Shift) key = 0x3a; break; // ;\n case 61: if (flags & KeyFlags.Shift) key = 0x2b; break; // +\n case 173: key = flags & KeyFlags.Shift ? 0x5f : 0x2d; break; // _ -\n }\n if (flags & KeyFlags.KeyDown) {\n this.exports.machine_key_down(this.sys, key);\n this.joymask0 |= mask;\n this.joymask1 |= mask2;\n } else if (flags & KeyFlags.KeyUp) {\n this.exports.machine_key_up(this.sys, key);\n this.joymask0 &= ~mask;\n this.joymask1 &= ~mask2;\n }\n this.exports.c64_joystick(this.sys, this.joymask0, this.joymask1);\n }\n getRasterY() {\n return this.exports.machine_get_raster_line(this.sys);\n }\n getDebugStateOffset(index: number) {\n var p = this.exports.machine_get_debug_pointer(this.sys, index);\n return p - this.sys;\n }\n getDebugCategories() {\n return ['CPU','ZPRAM','Stack','PLA','CIA','VIC','SID'];\n }\n getDebugInfo(category:string, state:any) {\n switch (category) {\n case 'PLA': {\n let s = \"\";\n let iomapped = state.pla[0];\n let port = state.pla[3];\n s += `$0000 - $9FFF RAM\\n`;\n s += `$A000 - $BFFF ${(port&3)==3 ? 'BASIC ROM' : 'RAM'}\\n`;\n s += `$C000 - $CFFF RAM\\n`;\n s += `$D000 - $DFFF ${iomapped ? 'I/O' : (port&3)!=0 ? 'CHAR ROM' : 'RAM'}\\n`;\n s += `$E000 - $FFFF ${(port&2)==2 ? 'KERNAL ROM' : 'RAM'}\\n`;\n return s;\n }\n case 'CIA': {\n let s = \"\";\n for (let i=0; i<2; i++) {\n let m = i ? state.cia2 : state.cia1;\n s += `CIA ${i+1}\\n`;\n s += ` A: Data ${hex(m[0])} DDR ${hex(m[1])} Input ${hex(m[2])}`;\n s += ` Timer ${hex(m[10]+m[11]*256, 4)}\\n`;\n s += ` B: Data ${hex(m[4])} DDR ${hex(m[5])} Input ${hex(m[6])}`;\n s += ` Timer ${hex(m[10+10]+m[11+10]*256, 4)}\\n`;\n //s += ` IMR ${hex(m[48])} ICR ${hex(m[50])}\\n`\n }\n return s;\n }\n case 'VIC': {\n let m = state.vic;\n let s = '';\n let vicbank = ((state.cia2[0] & 3) ^ 3) * 0x4000;\n let charmem = vicbank + (state.vic[0x18] & 14) * 0x400;\n let screen = vicbank + (state.vic[0x18] >> 4) * 0x400;\n let isbitmap = state.vic[0x11] & 0x20;\n let ischar = (state.cia2[0]&1)==1 && (state.vic[0x18]&12)==4;\n let rasterX = state.state[0xf4];\n let rasterY = this.getRasterY();\n s += 'Mode:';\n if (state.vic[0x11] & 0x20) s += ' BITMAP'; else s += ' CHAR';\n if (state.vic[0x16] & 0x10) s += ' MULTICOLOR';\n if (state.vic[0x11] & 0x40) s += ' EXTENDED';\n s += \"\\n\";\n s += `Raster: (${lpad(rasterX,3)}, ${lpad(rasterY,3)}) `;\n s += `Scroll: (${state.vic[0x16] & 7}, ${state.vic[0x11] & 7})`;\n s += \"\\n\";\n s += `VIC Bank: $${hex(vicbank,4)} Scrn: $${hex(screen,4)} `;\n if (isbitmap) s += `Bitmap: $${hex(charmem&0xe000,4)}`\n else if (ischar) s += `Char: ROM $${hex(charmem,4)}`;\n else s += `Char: $${hex(charmem,4)}`;\n s += \"\\n\";\n s += dumpRAM(m, 0xd000, 64);\n return s;\n }\n case 'SID': {\n let m = state.sid;\n let s = ''\n s += dumpRAM(m, 0xd400, 32);\n return s;\n }\n }\n }\n\n setPaddleInput(controller: number, value: number): void {\n if (controller == 0) this.lightpen_x = value;\n if (controller == 1) this.lightpen_y = value;\n const x1 = 22;\n const y1 = 36;\n const x2 = 228;\n const y2 = 220;\n let x = clamp(0, 255, (this.lightpen_x - x1) / (x2 - x1) * 160 + 24);\n let y = clamp(0, 255, (this.lightpen_y - y1) / (y2 - y1) * 200 + 50);\n this.exports.machine_set_mouse(this.sys, x, y);\n }\n\n}\n", "\nimport { C64_WASMMachine } from \"../machine/c64\";\nimport { Platform, Base6502MachinePlatform, getToolForFilename_6502, getOpcodeMetadata_6502 } from \"../common/baseplatform\";\nimport { PLATFORMS } from \"../common/emu\";\nimport { BaseMAME6502Platform } from \"../common/mameplatform\";\n\nconst C64_PRESETS = [\n {id:'hello.dasm', name:'Hello World (ASM)'},\n {id:'23matches.c', name:'23 Matches'},\n {id:'tgidemo.c', name:'TGI Graphics Demo'},\n {id:'upandaway.c', name:'Up, Up and Away'},\n {id:'siegegame.c', name:'Siege Game'},\n {id:'joymove.c', name:'Sprite Movement'},\n {id:'sprite_collision.c', name:'Sprite Collision'},\n {id:'scroll1.c', name:'Scrolling (Single Buffer)'},\n {id:'scroll2.c', name:'Scrolling (Double Buffer)'},\n {id:'scroll3.c', name:'Scrolling (Multidirectional)'},\n {id:'scroll4.c', name:'Scrolling (Color RAM Buffering)'},\n {id:'scroll5.c', name:'Scrolling (Camera Following)'},\n {id:'side_scroller.c', name:'Side-Scrolling Game'},\n {id:'fullscrollgame.c', name:'Full-Scrolling Game'},\n {id:'test_multiplex.c', name:'Sprite Retriggering'},\n {id:'test_multispritelib.c', name:'Sprite Multiplexing Library'},\n {id:'scrolling_text.c', name:'Big Scrolling Text'},\n {id:'mcbitmap.c', name:'Multicolor Bitmap Mode'},\n //{id:'mandel.c', name:'Mandelbrot Fractal'},\n {id:'musicplayer.c', name:'Music Player'},\n //{id:'sidtune.dasm', name:'Tiny SID Tune (ASM)'},\n {id:'siddemo.c', name:'SID Player Demo'},\n {id:'climber.c', name:'Climber Game'},\n];\n\nconst C64_MEMORY_MAP = { main:[\n {name:'6510 Registers',start:0x0, size:0x2,type:'io'},\n {name:'BIOS Reserved', start:0x200, size:0xa7},\n {name:'Default Screen RAM', start:0x400, size:1024,type:'ram'},\n //{name:'RAM', start:0x2, size:0x7ffe,type:'ram'},\n {name:'Cartridge ROM',start:0x8000,size:0x2000,type:'rom'},\n {name:'BASIC ROM', start:0xa000,size:0x2000,type:'rom'},\n {name:'Upper RAM', start:0xc000,size:0x1000,type:'ram'},\n {name:'Character ROM',start:0xd000,size:0x1000,type:'rom'},\n {name:'VIC-II I/O', start:0xd000,size:0x0400,type:'io'},\n {name:'SID', start:0xd400,size:0x0400,type:'io'},\n {name:'Color RAM', start:0xd800,size:0x0400,type:'io'},\n {name:'CIA 1', start:0xdc00,size:0x0100,type:'io'},\n {name:'CIA 2', start:0xdd00,size:0x0100,type:'io'},\n {name:'I/O 1', start:0xde00,size:0x0100,type:'io'},\n {name:'I/O 2', start:0xdf00,size:0x0100,type:'io'},\n {name:'KERNAL ROM', start:0xe000,size:0x2000,type:'rom'},\n] }\n\n// WASM C64 platform\nclass C64WASMPlatform extends Base6502MachinePlatform implements Platform {\n\n newMachine() { return new C64_WASMMachine('c64'); }\n\n getPresets() { return C64_PRESETS; }\n getDefaultExtension() { return \".c\"; };\n readAddress(a) { return this.machine.readConst(a); }\n getMemoryMap() { return C64_MEMORY_MAP; }\n showHelp() { return \"https://8bitworkshop.com/docs/platforms/c64/\" }\n getROMExtension(rom:Uint8Array) { \n /*\n if (rom && rom[0] == 0x00 && rom[1] == 0x80 && rom[2+4] == 0xc3 && rom[2+5] == 0xc2) return \".crt\";\n */\n if (rom && rom[0] == 0x01 && rom[1] == 0x08) return \".prg\";\n else return \".bin\";\n }\n}\n\n// C64 MAME platform\nabstract class C64MAMEPlatform extends BaseMAME6502Platform {\n getPresets() { return C64_PRESETS; }\n getToolForFilename = getToolForFilename_6502;\n getOpcodeMetadata = getOpcodeMetadata_6502;\n getDefaultExtension() { return \".c\"; }\n loadROM(title, data) {\n if (!this.started) {\n this.startModule(this.mainElement, {\n jsfile:'mame8bitpc.js',\n biosfile:'c64.zip',\n cfgfile:'c64.cfg',\n driver:'c64',\n width:418,\n height:235,\n romfn:'/emulator/image.crt',\n romdata:new Uint8Array(data),\n romsize:0x10000,\n extraargs: ['-autoboot_delay','5','-autoboot_command','load \"$\",8,1\\n'],\n preInit:function(_self) {\n },\n });\n } else {\n this.loadROMFile(data);\n this.loadRegion(\":quickload\", data);\n var result = this.luacall(`image:load(\"/emulator/image.prg\")`)\n console.log('load rom', result);\n //this.loadRegion(\":exp:standard\", data);\n }\n }\n start() {\n }\n getMemoryMap() { return C64_MEMORY_MAP; }\n}\n\n\nPLATFORMS['c64'] = C64WASMPlatform;\nPLATFORMS['c64.wasm'] = C64WASMPlatform;\nPLATFORMS['c64.mame'] = C64MAMEPlatform;\n"], + "mappings": "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", + "names": [] +} diff --git a/gen/c64-73FGKJFH.js b/gen/c64-73FGKJFH.js deleted file mode 100644 index 5238446a..00000000 --- a/gen/c64-73FGKJFH.js +++ /dev/null @@ -1,14 +0,0 @@ -import{a as M}from"./chunk-PQDZBFBB.js";import{B as S,I as _,r as g,y as b}from"./chunk-HB3LWF25.js";import{J as n,O as a,U as p,a as l,g as o,u as x}from"./chunk-ATS7PSQG.js";import"./chunk-5XVCUSSZ.js";var d=class extends g{constructor(){super(...arguments);this.numTotalScanlines=312;this.cpuCyclesPerLine=63;this.joymask0=0;this.joymask1=0;this.lightpen_x=0;this.lightpen_y=0}loadBIOS(e){var s=59940-57344+12288;e[s]=96,super.loadBIOS(e)}reset(){super.reset();for(var e=0;e<128;e++)this.exports.machine_key_up(this.sys,e);if(this.romptr&&this.romlen)if(this.exports.machine_load_rom(this.sys,this.romptr,this.romlen),this.prgstart=this.romarr[0]+(this.romarr[1]<<8),this.prgstart==2049&&(this.prgstart=this.romarr[2]+(this.romarr[3]<<8)+2,console.log("prgstart",o(this.prgstart))),this.prgstart<32768){this.exports.machine_exec(this.sys,25e4);for(var s="\rSYS "+this.prgstart+"\r",t=0;t>4)*1024,h=s.vic[17]&32,R=(s.cia2[0]&1)==1&&(s.vic[24]&12)==4,y=s.state[244],$=this.getRasterY();return i+="Mode:",s.vic[17]&32?i+=" BITMAP":i+=" CHAR",s.vic[22]&16&&(i+=" MULTICOLOR"),s.vic[17]&64&&(i+=" EXTENDED"),i+=` -`,i+=`Raster: (${l(y,3)}, ${l($,3)}) `,i+=`Scroll: (${s.vic[22]&7}, ${s.vic[17]&7})`,i+=` -`,i+=`VIC Bank: $${o(r,4)} Scrn: $${o(m,4)} `,h?i+=`Bitmap: $${o(c&57344,4)}`:R?i+=`Char: ROM $${o(c,4)}`:i+=`Char: $${o(c,4)}`,i+=` -`,i+=p(t,53248,64),i}case"SID":{let t=s.sid,i="";return i+=p(t,54272,32),i}}}setPaddleInput(e,s){e==0&&(this.lightpen_x=s),e==1&&(this.lightpen_y=s);let t=22,i=36,r=228,c=220,m=x(0,255,(this.lightpen_x-t)/(r-t)*160+24),h=x(0,255,(this.lightpen_y-i)/(c-i)*200+50);this.exports.machine_set_mouse(this.sys,m,h)}};var v=[{id:"hello.dasm",name:"Hello World (ASM)"},{id:"23matches.c",name:"23 Matches"},{id:"tgidemo.c",name:"TGI Graphics Demo"},{id:"upandaway.c",name:"Up, Up and Away"},{id:"siegegame.c",name:"Siege Game"},{id:"joymove.c",name:"Sprite Movement"},{id:"sprite_collision.c",name:"Sprite Collision"},{id:"scroll1.c",name:"Scrolling (Single Buffer)"},{id:"scroll2.c",name:"Scrolling (Double Buffer)"},{id:"scroll3.c",name:"Scrolling (Multidirectional)"},{id:"scroll4.c",name:"Scrolling (Color RAM Buffering)"},{id:"scroll5.c",name:"Scrolling (Camera Following)"},{id:"side_scroller.c",name:"Side-Scrolling Game"},{id:"fullscrollgame.c",name:"Full-Scrolling Game"},{id:"test_multiplex.c",name:"Sprite Retriggering"},{id:"test_multispritelib.c",name:"Sprite Multiplexing Library"},{id:"scrolling_text.c",name:"Big Scrolling Text"},{id:"mcbitmap.c",name:"Multicolor Bitmap Mode"},{id:"musicplayer.c",name:"Music Player"},{id:"siddemo.c",name:"SID Player Demo"},{id:"climber.c",name:"Climber Game"}],C={main:[{name:"6510 Registers",start:0,size:2,type:"io"},{name:"BIOS Reserved",start:512,size:167},{name:"Default Screen RAM",start:1024,size:1024,type:"ram"},{name:"Cartridge ROM",start:32768,size:8192,type:"rom"},{name:"BASIC ROM",start:40960,size:8192,type:"rom"},{name:"Upper RAM",start:49152,size:4096,type:"ram"},{name:"Character ROM",start:53248,size:4096,type:"rom"},{name:"VIC-II I/O",start:53248,size:1024,type:"io"},{name:"SID",start:54272,size:1024,type:"io"},{name:"Color RAM",start:55296,size:1024,type:"io"},{name:"CIA 1",start:56320,size:256,type:"io"},{name:"CIA 2",start:56576,size:256,type:"io"},{name:"I/O 1",start:56832,size:256,type:"io"},{name:"I/O 2",start:57088,size:256,type:"io"},{name:"KERNAL ROM",start:57344,size:8192,type:"rom"}]},f=class extends _{newMachine(){return new d("c64")}getPresets(){return v}getDefaultExtension(){return".c"}readAddress(e){return this.machine.readConst(e)}getMemoryMap(){return C}showHelp(){return"https://8bitworkshop.com/docs/platforms/c64/"}getROMExtension(e){return e&&e[0]==1&&e[1]==8?".prg":".bin"}},A=class extends M{constructor(){super(...arguments);this.getToolForFilename=b;this.getOpcodeMetadata=S}getPresets(){return v}getDefaultExtension(){return".c"}loadROM(e,s){if(!this.started)this.startModule(this.mainElement,{jsfile:"mame8bitpc.js",biosfile:"c64.zip",cfgfile:"c64.cfg",driver:"c64",width:418,height:235,romfn:"/emulator/image.crt",romdata:new Uint8Array(s),romsize:65536,extraargs:["-autoboot_delay","5","-autoboot_command",`load "$",8,1 -`],preInit:function(i){}});else{this.loadROMFile(s),this.loadRegion(":quickload",s);var t=this.luacall('image:load("/emulator/image.prg")');console.log("load rom",t)}}start(){}getMemoryMap(){return C}};n.c64=f;n["c64.wasm"]=f;n["c64.mame"]=A; -//# sourceMappingURL=c64-73FGKJFH.js.map diff --git a/gen/c64-73FGKJFH.js.map b/gen/c64-73FGKJFH.js.map deleted file mode 100644 index 20a0efa1..00000000 --- a/gen/c64-73FGKJFH.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../src/machine/c64.ts", "../src/platform/c64.ts"], - "sourcesContent": ["\nimport { AcceptsPaddleInput, Probeable } from \"../common/devices\";\nimport { dumpRAM, KeyFlags } from \"../common/emu\";\nimport { clamp, hex, lpad } from \"../common/util\";\n\n// https://www.c64-wiki.com/wiki/C64\n// http://www.zimmers.net/cbmpics/cbm/c64/vic-ii.txt\n// http://www.zimmers.net/cbmpics/cbm/c64/c64prg.txt\n// http://sta.c64.org/cbm64mem.html\n// http://hitmen.c02.at/temp/palstuff/\n\n//// WASM Machine\n\nimport { Machine } from \"../common/baseplatform\";\nimport { TrapCondition } from \"../common/devices\";\nimport { BaseWASMMachine } from \"../common/wasmplatform\";\n\nexport class C64_WASMMachine extends BaseWASMMachine \n implements Machine, Probeable, AcceptsPaddleInput {\n\n numTotalScanlines = 312;\n cpuCyclesPerLine = 63;\n\n prgstart : number;\n joymask0 = 0;\n joymask1 = 0;\n lightpen_x = 0;\n lightpen_y = 0;\n\n loadBIOS(srcArray: Uint8Array) {\n var patch1ofs = 0xea24 - 0xe000 + 0x3000;\n /*if (srcArray[patch1ofs] == 0x02)*/ srcArray[patch1ofs] = 0x60; // cursor move, KIL -> RTS\n super.loadBIOS(srcArray);\n }\n reset() {\n super.reset();\n // clear keyboard\n for (var ch=0; ch<128; ch++) {\n this.exports.machine_key_up(this.sys, ch);\n }\n // load rom\n if (this.romptr && this.romlen) {\n this.exports.machine_load_rom(this.sys, this.romptr, this.romlen);\n this.prgstart = this.romarr[0] + (this.romarr[1]<<8); // get load address\n // look for BASIC program start\n if (this.prgstart == 0x801) {\n this.prgstart = this.romarr[2] + (this.romarr[3]<<8) + 2; // point to after BASIC program\n console.log(\"prgstart\", hex(this.prgstart));\n }\n // is program loaded into RAM?\n if (this.prgstart < 0x8000) {\n // advance BIOS a few frames\n this.exports.machine_exec(this.sys, 250000);\n // type in command (SYS 2061)\n var cmd = \"\\rSYS \"+this.prgstart+\"\\r\";\n for (var i=0; i ,\n case 191: key = flags & KeyFlags.Shift ? 0x3f : 0x2f; break; // ? /\n case 222: key = flags & KeyFlags.Shift ? 0x22 : 0x27; break; // \" '\n case 219: key = flags & KeyFlags.Shift ? 0x7b : 0x5b; break; // [\n case 221: key = flags & KeyFlags.Shift ? 0x7d : 0x5d; break; // ]\n case 48: if (flags & KeyFlags.Shift) key = 0x29; break; // )\n case 49: if (flags & KeyFlags.Shift) key = 0x21; break; // !\n case 50: if (flags & KeyFlags.Shift) key = 0x40; break; // @\n case 51: if (flags & KeyFlags.Shift) key = 0x23; break; // #\n case 52: if (flags & KeyFlags.Shift) key = 0x24; break; // $\n case 53: if (flags & KeyFlags.Shift) key = 0x25; break; // %\n case 54: if (flags & KeyFlags.Shift) key = 0x5e; break; // ^\n case 55: if (flags & KeyFlags.Shift) key = 0x26; break; // &\n case 56: if (flags & KeyFlags.Shift) key = 0x2a; break; // *\n case 57: if (flags & KeyFlags.Shift) key = 0x28; break; // (\n case 59: if (flags & KeyFlags.Shift) key = 0x3a; break; // ;\n case 61: if (flags & KeyFlags.Shift) key = 0x2b; break; // +\n case 173: key = flags & KeyFlags.Shift ? 0x5f : 0x2d; break; // _ -\n }\n if (flags & KeyFlags.KeyDown) {\n this.exports.machine_key_down(this.sys, key);\n this.joymask0 |= mask;\n this.joymask1 |= mask2;\n } else if (flags & KeyFlags.KeyUp) {\n this.exports.machine_key_up(this.sys, key);\n this.joymask0 &= ~mask;\n this.joymask1 &= ~mask2;\n }\n this.exports.c64_joystick(this.sys, this.joymask0, this.joymask1);\n }\n getRasterY() {\n return this.exports.machine_get_raster_line(this.sys);\n }\n getDebugStateOffset(index: number) {\n var p = this.exports.machine_get_debug_pointer(this.sys, index);\n return p - this.sys;\n }\n getDebugCategories() {\n return ['CPU','ZPRAM','Stack','PLA','CIA','VIC','SID'];\n }\n getDebugInfo(category:string, state:any) {\n switch (category) {\n case 'PLA': {\n let s = \"\";\n let iomapped = state.pla[0];\n let port = state.pla[3];\n s += `$0000 - $9FFF RAM\\n`;\n s += `$A000 - $BFFF ${(port&3)==3 ? 'BASIC ROM' : 'RAM'}\\n`;\n s += `$C000 - $CFFF RAM\\n`;\n s += `$D000 - $DFFF ${iomapped ? 'I/O' : (port&3)!=0 ? 'CHAR ROM' : 'RAM'}\\n`;\n s += `$E000 - $FFFF ${(port&2)==2 ? 'KERNAL ROM' : 'RAM'}\\n`;\n return s;\n }\n case 'CIA': {\n let s = \"\";\n for (let i=0; i<2; i++) {\n let m = i ? state.cia2 : state.cia1;\n s += `CIA ${i+1}\\n`;\n s += ` A: Data ${hex(m[0])} DDR ${hex(m[1])} Input ${hex(m[2])}`;\n s += ` Timer ${hex(m[10]+m[11]*256, 4)}\\n`;\n s += ` B: Data ${hex(m[4])} DDR ${hex(m[5])} Input ${hex(m[6])}`;\n s += ` Timer ${hex(m[10+10]+m[11+10]*256, 4)}\\n`;\n //s += ` IMR ${hex(m[48])} ICR ${hex(m[50])}\\n`\n }\n return s;\n }\n case 'VIC': {\n let m = state.vic;\n let s = '';\n let vicbank = ((state.cia2[0] & 3) ^ 3) * 0x4000;\n let charmem = vicbank + (state.vic[0x18] & 14) * 0x400;\n let screen = vicbank + (state.vic[0x18] >> 4) * 0x400;\n let isbitmap = state.vic[0x11] & 0x20;\n let ischar = (state.cia2[0]&1)==1 && (state.vic[0x18]&12)==4;\n let rasterX = state.state[0xf4];\n let rasterY = this.getRasterY();\n s += 'Mode:';\n if (state.vic[0x11] & 0x20) s += ' BITMAP'; else s += ' CHAR';\n if (state.vic[0x16] & 0x10) s += ' MULTICOLOR';\n if (state.vic[0x11] & 0x40) s += ' EXTENDED';\n s += \"\\n\";\n s += `Raster: (${lpad(rasterX,3)}, ${lpad(rasterY,3)}) `;\n s += `Scroll: (${state.vic[0x16] & 7}, ${state.vic[0x11] & 7})`;\n s += \"\\n\";\n s += `VIC Bank: $${hex(vicbank,4)} Scrn: $${hex(screen,4)} `;\n if (isbitmap) s += `Bitmap: $${hex(charmem&0xe000,4)}`\n else if (ischar) s += `Char: ROM $${hex(charmem,4)}`;\n else s += `Char: $${hex(charmem,4)}`;\n s += \"\\n\";\n s += dumpRAM(m, 0xd000, 64);\n return s;\n }\n case 'SID': {\n let m = state.sid;\n let s = ''\n s += dumpRAM(m, 0xd400, 32);\n return s;\n }\n }\n }\n\n setPaddleInput(controller: number, value: number): void {\n if (controller == 0) this.lightpen_x = value;\n if (controller == 1) this.lightpen_y = value;\n const x1 = 22;\n const y1 = 36;\n const x2 = 228;\n const y2 = 220;\n let x = clamp(0, 255, (this.lightpen_x - x1) / (x2 - x1) * 160 + 24);\n let y = clamp(0, 255, (this.lightpen_y - y1) / (y2 - y1) * 200 + 50);\n this.exports.machine_set_mouse(this.sys, x, y);\n }\n\n}\n", "\nimport { C64_WASMMachine } from \"../machine/c64\";\nimport { Platform, Base6502MachinePlatform, getToolForFilename_6502, getOpcodeMetadata_6502 } from \"../common/baseplatform\";\nimport { PLATFORMS } from \"../common/emu\";\nimport { BaseMAME6502Platform } from \"../common/mameplatform\";\n\nconst C64_PRESETS = [\n {id:'hello.dasm', name:'Hello World (ASM)'},\n {id:'23matches.c', name:'23 Matches'},\n {id:'tgidemo.c', name:'TGI Graphics Demo'},\n {id:'upandaway.c', name:'Up, Up and Away'},\n {id:'siegegame.c', name:'Siege Game'},\n {id:'joymove.c', name:'Sprite Movement'},\n {id:'sprite_collision.c', name:'Sprite Collision'},\n {id:'scroll1.c', name:'Scrolling (Single Buffer)'},\n {id:'scroll2.c', name:'Scrolling (Double Buffer)'},\n {id:'scroll3.c', name:'Scrolling (Multidirectional)'},\n {id:'scroll4.c', name:'Scrolling (Color RAM Buffering)'},\n {id:'scroll5.c', name:'Scrolling (Camera Following)'},\n {id:'side_scroller.c', name:'Side-Scrolling Game'},\n {id:'fullscrollgame.c', name:'Full-Scrolling Game'},\n {id:'test_multiplex.c', name:'Sprite Retriggering'},\n {id:'test_multispritelib.c', name:'Sprite Multiplexing Library'},\n {id:'scrolling_text.c', name:'Big Scrolling Text'},\n {id:'mcbitmap.c', name:'Multicolor Bitmap Mode'},\n //{id:'mandel.c', name:'Mandelbrot Fractal'},\n {id:'musicplayer.c', name:'Music Player'},\n //{id:'sidtune.dasm', name:'Tiny SID Tune (ASM)'},\n {id:'siddemo.c', name:'SID Player Demo'},\n {id:'climber.c', name:'Climber Game'},\n];\n\nconst C64_MEMORY_MAP = { main:[\n {name:'6510 Registers',start:0x0, size:0x2,type:'io'},\n {name:'BIOS Reserved', start:0x200, size:0xa7},\n {name:'Default Screen RAM', start:0x400, size:1024,type:'ram'},\n //{name:'RAM', start:0x2, size:0x7ffe,type:'ram'},\n {name:'Cartridge ROM',start:0x8000,size:0x2000,type:'rom'},\n {name:'BASIC ROM', start:0xa000,size:0x2000,type:'rom'},\n {name:'Upper RAM', start:0xc000,size:0x1000,type:'ram'},\n {name:'Character ROM',start:0xd000,size:0x1000,type:'rom'},\n {name:'VIC-II I/O', start:0xd000,size:0x0400,type:'io'},\n {name:'SID', start:0xd400,size:0x0400,type:'io'},\n {name:'Color RAM', start:0xd800,size:0x0400,type:'io'},\n {name:'CIA 1', start:0xdc00,size:0x0100,type:'io'},\n {name:'CIA 2', start:0xdd00,size:0x0100,type:'io'},\n {name:'I/O 1', start:0xde00,size:0x0100,type:'io'},\n {name:'I/O 2', start:0xdf00,size:0x0100,type:'io'},\n {name:'KERNAL ROM', start:0xe000,size:0x2000,type:'rom'},\n] }\n\n// WASM C64 platform\nclass C64WASMPlatform extends Base6502MachinePlatform implements Platform {\n\n newMachine() { return new C64_WASMMachine('c64'); }\n\n getPresets() { return C64_PRESETS; }\n getDefaultExtension() { return \".c\"; };\n readAddress(a) { return this.machine.readConst(a); }\n getMemoryMap() { return C64_MEMORY_MAP; }\n showHelp() { return \"https://8bitworkshop.com/docs/platforms/c64/\" }\n getROMExtension(rom:Uint8Array) { \n /*\n if (rom && rom[0] == 0x00 && rom[1] == 0x80 && rom[2+4] == 0xc3 && rom[2+5] == 0xc2) return \".crt\";\n */\n if (rom && rom[0] == 0x01 && rom[1] == 0x08) return \".prg\";\n else return \".bin\";\n }\n}\n\n// C64 MAME platform\nabstract class C64MAMEPlatform extends BaseMAME6502Platform {\n getPresets() { return C64_PRESETS; }\n getToolForFilename = getToolForFilename_6502;\n getOpcodeMetadata = getOpcodeMetadata_6502;\n getDefaultExtension() { return \".c\"; }\n loadROM(title, data) {\n if (!this.started) {\n this.startModule(this.mainElement, {\n jsfile:'mame8bitpc.js',\n biosfile:'c64.zip',\n cfgfile:'c64.cfg',\n driver:'c64',\n width:418,\n height:235,\n romfn:'/emulator/image.crt',\n romdata:new Uint8Array(data),\n romsize:0x10000,\n extraargs: ['-autoboot_delay','5','-autoboot_command','load \"$\",8,1\\n'],\n preInit:function(_self) {\n },\n });\n } else {\n this.loadROMFile(data);\n this.loadRegion(\":quickload\", data);\n var result = this.luacall(`image:load(\"/emulator/image.prg\")`)\n console.log('load rom', result);\n //this.loadRegion(\":exp:standard\", data);\n }\n }\n start() {\n }\n getMemoryMap() { return C64_MEMORY_MAP; }\n}\n\n\nPLATFORMS['c64'] = C64WASMPlatform;\nPLATFORMS['c64.wasm'] = C64WASMPlatform;\nPLATFORMS['c64.mame'] = C64MAMEPlatform;\n"], - "mappings": "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", - "names": [] -} diff --git a/gen/chunk-4TWVHUDP.js b/gen/chunk-R63KYPGV.js similarity index 93% rename from gen/chunk-4TWVHUDP.js rename to gen/chunk-R63KYPGV.js index b9e379fc..1331866f 100644 --- a/gen/chunk-4TWVHUDP.js +++ b/gen/chunk-R63KYPGV.js @@ -1,22 +1,22 @@ -import{a as sn,b as el,c as tl}from"./chunk-SXEVG2WS.js";import{a as Ds}from"./chunk-5SHCNQ2O.js";import{a as Ls,b as Rs,c as rl}from"./chunk-4PJ2B2TK.js";import{D as ca,J as fa,l as ee,u as As,v as Fs}from"./chunk-HB3LWF25.js";import{D as Dt,E as oa,F as Fr,I as Cs,J as la,S as ua,U as ks,a as Ft,aa as an,b as oi,ba as Ps,ca as li,d as Et,e as sa,f as pt,g as De,j as Es,l as Zi,m as en,n as tn,o as gr,p as Ss,s as rn,v as _s,w as Ts,x as nn,y as gt,z as Ar}from"./chunk-ATS7PSQG.js";import{b as si,c as ws,e as aa}from"./chunk-5XVCUSSZ.js";var ha=ws((Is,da)=>{(function(l){if(typeof Is=="object"&&typeof da!="undefined")da.exports=l();else if(typeof define=="function"&&define.amd)define([],l);else{var t;typeof window!="undefined"?t=window:typeof global!="undefined"?t=global:typeof self!="undefined"?t=self:t=this,t.localforage=l()}})(function(){var l,t,i;return function a(u,d,m){function y(W,fe){if(!d[W]){if(!u[W]){var z=typeof si=="function"&&si;if(!fe&&z)return z(W,!0);if(b)return b(W,!0);var U=new Error("Cannot find module '"+W+"'");throw U.code="MODULE_NOT_FOUND",U}var q=d[W]={exports:{}};u[W][0].call(q.exports,function(de){var K=u[W][1][de];return y(K||de)},q,q.exports,a,u,d,m)}return d[W].exports}for(var b=typeof si=="function"&&si,L=0;L=43)}}).catch(function(){return!1})}function _e(p){return typeof Ce=="boolean"?z.resolve(Ce):oe(p).then(function(S){return Ce=S,Ce})}function He(p){var S=be[p.name],v={};v.promise=new z(function(C,k){v.resolve=C,v.reject=k}),S.deferredOperations.push(v),S.dbReady?S.dbReady=S.dbReady.then(function(){return v.promise}):S.dbReady=v.promise}function Me(p){var S=be[p.name],v=S.deferredOperations.pop();if(v)return v.resolve(),v.promise}function tt(p,S){var v=be[p.name],C=v.deferredOperations.pop();if(C)return C.reject(S),C.promise}function Qe(p,S){return new z(function(v,C){if(be[p.name]=be[p.name]||ir(),p.db)if(S)He(p),p.db.close();else return v(p.db);var k=[p.name];S&&k.push(p.version);var _=L.open.apply(L,k);S&&(_.onupgradeneeded=function(N){var j=_.result;try{j.createObjectStore(p.storeName),N.oldVersion<=1&&j.createObjectStore(xe)}catch(V){if(V.name==="ConstraintError")console.warn('The database "'+p.name+'" has been upgraded from version '+N.oldVersion+" to version "+N.newVersion+', but the storage "'+p.storeName+'" already exists.');else throw V}}),_.onerror=function(N){N.preventDefault(),C(_.error)},_.onsuccess=function(){var N=_.result;N.onversionchange=function(j){j.target.close()},v(N),Me(p)}})}function mt(p){return Qe(p,!1)}function rr(p){return Qe(p,!0)}function wr(p,S){if(!p.db)return!0;var v=!p.db.objectStoreNames.contains(p.storeName),C=p.versionp.db.version;if(C&&(p.version!==S&&console.warn('The database "'+p.name+`" can't be downgraded from version `+p.db.version+" to version "+p.version+"."),p.version=p.db.version),k||v){if(v){var _=p.db.version+1;_>p.version&&(p.version=_)}return!0}return!1}function Ir(p){return new z(function(S,v){var C=new FileReader;C.onerror=v,C.onloadend=function(k){var _=btoa(k.target.result||"");S({__local_forage_encoded_blob:!0,data:_,type:p.type})},C.readAsBinaryString(p)})}function Yt(p){var S=ae(atob(p.data));return fe([S],{type:p.type})}function Mr(p){return p&&p.__local_forage_encoded_blob}function vt(p){var S=this,v=S._initReady().then(function(){var C=be[S._dbInfo.name];if(C&&C.dbReady)return C.dbReady});return q(v,p,p),v}function An(p){He(p);for(var S=be[p.name],v=S.forages,C=0;C0&&(!p.db||_.name==="InvalidStateError"||_.name==="NotFoundError"))return z.resolve().then(function(){if(!p.db||_.name==="NotFoundError"&&!p.db.objectStoreNames.contains(p.storeName)&&p.version<=p.db.version)return p.db&&(p.version=p.db.version+1),rr(p)}).then(function(){return An(p).then(function(){Je(p,S,v,C-1)})}).catch(v);v(_)}}function ir(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function Pi(p){var S=this,v={db:null};if(p)for(var C in p)v[C]=p[C];var k=be[v.name];k||(k=ir(),be[v.name]=k),k.forages.push(S),S._initReady||(S._initReady=S.ready,S.ready=vt);var _=[];function N(){return z.resolve()}for(var j=0;j>4,Y[k++]=(N&15)<<4|j>>2,Y[k++]=(j&3)<<6|V&63;return G}function Ke(p){var S=new Uint8Array(p),v="",C;for(C=0;C>2],v+=$e[(S[C]&3)<<4|S[C+1]>>4],v+=$e[(S[C+1]&15)<<2|S[C+2]>>6],v+=$e[S[C+2]&63];return S.length%3==2?v=v.substring(0,v.length-1)+"=":S.length%3==1&&(v=v.substring(0,v.length-2)+"=="),v}function Ze(p,S){var v="";if(p&&(v=Wr.call(p)),p&&(v==="[object ArrayBuffer]"||p.buffer&&Wr.call(p.buffer)==="[object ArrayBuffer]")){var C,k=Sr;p instanceof ArrayBuffer?(C=p,k+=Tr):(C=p.buffer,v==="[object Int8Array]"?k+=yt:v==="[object Uint8Array]"?k+=At:v==="[object Uint8ClampedArray]"?k+=Nt:v==="[object Int16Array]"?k+=Fi:v==="[object Uint16Array]"?k+=Or:v==="[object Int32Array]"?k+=sr:v==="[object Uint32Array]"?k+=$r:v==="[object Float32Array]"?k+=Di:v==="[object Float64Array]"?k+=Ot:S(new Error("Failed to get type for BinaryArray"))),S(k+Ke(C))}else if(v==="[object Blob]"){var _=new FileReader;_.onload=function(){var N=In+p.type+"~"+Ke(this.result);S(Sr+Mt+N)},_.readAsArrayBuffer(p)}else try{S(JSON.stringify(p))}catch(N){console.error("Couldn't convert value into a JSON string: ",p),S(null,N)}}function Br(p){if(p.substring(0,_r)!==Sr)return JSON.parse(p);var S=p.substring(Xt),v=p.substring(_r,Xt),C;if(v===Mt&&Ai.test(S)){var k=S.match(Ai);C=k[1],S=S.substring(k[0].length)}var _=jr(S);switch(v){case Tr:return _;case Mt:return fe([_],{type:C});case yt:return new Int8Array(_);case At:return new Uint8Array(_);case Nt:return new Uint8ClampedArray(_);case Fi:return new Int16Array(_);case Or:return new Uint16Array(_);case sr:return new Int32Array(_);case $r:return new Uint32Array(_);case Di:return new Float32Array(_);case Ot:return new Float64Array(_);default:throw new Error("Unkown type: "+v)}}var Hr={serialize:Ze,deserialize:Br,stringToBuffer:jr,bufferToString:Ke};function Ur(p,S,v,C){p.executeSql("CREATE TABLE IF NOT EXISTS "+S.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],v,C)}function Li(p){var S=this,v={db:null};if(p)for(var C in p)v[C]=typeof p[C]!="string"?p[C].toString():p[C];var k=new z(function(_,N){try{v.db=openDatabase(v.name,String(v.version),v.description,v.size)}catch(j){return N(j)}v.db.transaction(function(j){Ur(j,v,function(){S._dbInfo=v,_()},function(V,G){N(G)})},N)});return v.serializer=Hr,k}function rt(p,S,v,C,k,_){p.executeSql(v,C,k,function(N,j){j.code===j.SYNTAX_ERR?N.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[S.storeName],function(V,G){G.rows.length?_(V,j):Ur(V,S,function(){V.executeSql(v,C,k,_)},_)},_):_(N,j)},_)}function Qt(p,S){var v=this;p=de(p);var C=new z(function(k,_){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function(j){rt(j,N,"SELECT * FROM "+N.storeName+" WHERE key = ? LIMIT 1",[p],function(V,G){var Y=G.rows.length?G.rows.item(0).value:null;Y&&(Y=N.serializer.deserialize(Y)),k(Y)},function(V,G){_(G)})})}).catch(_)});return U(C,S),C}function Mn(p,S){var v=this,C=new z(function(k,_){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function(j){rt(j,N,"SELECT * FROM "+N.storeName,[],function(V,G){for(var Y=G.rows,Z=Y.length,ye=0;ye0){N(Ri.apply(k,[p,V,v,C-1]));return}j(ye)}})})}).catch(j)});return U(_,v),_}function zr(p,S,v){return Ri.apply(this,[p,S,v,1])}function Cr(p,S){var v=this;p=de(p);var C=new z(function(k,_){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function(j){rt(j,N,"DELETE FROM "+N.storeName+" WHERE key = ?",[p],function(){k()},function(V,G){_(G)})})}).catch(_)});return U(C,S),C}function Nn(p){var S=this,v=new z(function(C,k){S.ready().then(function(){var _=S._dbInfo;_.db.transaction(function(N){rt(N,_,"DELETE FROM "+_.storeName,[],function(){C()},function(j,V){k(V)})})}).catch(k)});return U(v,p),v}function On(p){var S=this,v=new z(function(C,k){S.ready().then(function(){var _=S._dbInfo;_.db.transaction(function(N){rt(N,_,"SELECT COUNT(key) as c FROM "+_.storeName,[],function(j,V){var G=V.rows.item(0).c;C(G)},function(j,V){k(V)})})}).catch(k)});return U(v,p),v}function $n(p,S){var v=this,C=new z(function(k,_){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function(j){rt(j,N,"SELECT key FROM "+N.storeName+" WHERE id = ? LIMIT 1",[p+1],function(V,G){var Y=G.rows.length?G.rows.item(0).key:null;k(Y)},function(V,G){_(G)})})}).catch(_)});return U(C,S),C}function Ii(p){var S=this,v=new z(function(C,k){S.ready().then(function(){var _=S._dbInfo;_.db.transaction(function(N){rt(N,_,"SELECT key FROM "+_.storeName,[],function(j,V){for(var G=[],Y=0;Y '__WebKitDatabaseInfoTable__'",[],function(k,_){for(var N=[],j=0;j<_.rows.length;j++)N.push(_.rows.item(j).name);S({db:p,storeNames:N})},function(k,_){v(_)})},function(C){v(C)})})}function jn(p,S){S=K.apply(this,arguments);var v=this.config();p=typeof p!="function"&&p||{},p.name||(p.name=p.name||v.name,p.storeName=p.storeName||v.storeName);var C=this,k;return p.name?k=new z(function(_){var N;p.name===v.name?N=C._dbInfo.db:N=openDatabase(p.name,"","",0),p.storeName?_({db:N,storeNames:[p.storeName]}):_(Wn(N))}).then(function(_){return new z(function(N,j){_.db.transaction(function(V){function G(ke){return new z(function(Pe,We){V.executeSql("DROP TABLE IF EXISTS "+ke,[],function(){Pe()},function(Le,it){We(it)})})}for(var Y=[],Z=0,ye=_.storeNames.length;Z0}function Vr(p){var S=this,v={};if(p)for(var C in p)v[C]=p[C];return v.keyPrefix=$t(p,S._defaultConfig),qr()?(S._dbInfo=v,v.serializer=Hr,z.resolve()):z.reject()}function kr(p){var S=this,v=S.ready().then(function(){for(var C=S._dbInfo.keyPrefix,k=localStorage.length-1;k>=0;k--){var _=localStorage.key(k);_.indexOf(C)===0&&localStorage.removeItem(_)}});return U(v,p),v}function Oi(p,S){var v=this;p=de(p);var C=v.ready().then(function(){var k=v._dbInfo,_=localStorage.getItem(k.keyPrefix+p);return _&&(_=k.serializer.deserialize(_)),_});return U(C,S),C}function Hn(p,S){var v=this,C=v.ready().then(function(){for(var k=v._dbInfo,_=k.keyPrefix,N=_.length,j=localStorage.length,V=1,G=0;G=0;N--){var j=localStorage.key(N);j.indexOf(_)===0&&localStorage.removeItem(j)}}):k=z.reject("Invalid arguments"),U(k,S),k}var Hi={_driver:"localStorageWrapper",_initStorage:Vr,_support:Bn(),iterate:Hn,getItem:Oi,setItem:ji,removeItem:Wi,clear:kr,length:or,key:$i,keys:Un,dropInstance:Bi},zn=function(S,v){return S===v||typeof S=="number"&&typeof v=="number"&&isNaN(S)&&isNaN(v)},Gr=function(S,v){for(var C=S.length,k=0;k{(function(l,t){"use strict";typeof ln=="object"&&typeof ln.exports=="object"?ln.exports=l.document?t(l,!0):function(i){if(!i.document)throw new Error("jQuery requires a window with a document");return t(i)}:t(l)})(typeof window!="undefined"?window:$s,function(l,t){"use strict";var i=[],a=Object.getPrototypeOf,u=i.slice,d=i.flat?function(e){return i.flat.call(e)}:function(e){return i.concat.apply([],e)},m=i.push,y=i.indexOf,b={},L=b.toString,W=b.hasOwnProperty,fe=W.toString,z=fe.call(Object),U={},q=function(r){return typeof r=="function"&&typeof r.nodeType!="number"&&typeof r.item!="function"},de=function(r){return r!=null&&r===r.window},K=l.document,xe={type:!0,src:!0,nonce:!0,noModule:!0};function Ce(e,r,n){n=n||K;var s,c,f=n.createElement("script");if(f.text=e,r)for(s in xe)c=r[s]||r.getAttribute&&r.getAttribute(s),c&&f.setAttribute(s,c);n.head.appendChild(f).parentNode.removeChild(f)}function be(e){return e==null?e+"":typeof e=="object"||typeof e=="function"?b[L.call(e)]||"object":typeof e}var Se="3.6.3",o=function(e,r){return new o.fn.init(e,r)};o.fn=o.prototype={jquery:Se,constructor:o,length:0,toArray:function(){return u.call(this)},get:function(e){return e==null?u.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var r=o.merge(this.constructor(),e);return r.prevObject=this,r},each:function(e){return o.each(this,e)},map:function(e){return this.pushStack(o.map(this,function(r,n){return e.call(r,n,r)}))},slice:function(){return this.pushStack(u.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(o.grep(this,function(e,r){return(r+1)%2}))},odd:function(){return this.pushStack(o.grep(this,function(e,r){return r%2}))},eq:function(e){var r=this.length,n=+e+(e<0?r:0);return this.pushStack(n>=0&&n0&&r-1 in e}var ae=function(e){var r,n,s,c,f,h,E,x,F,R,B,D,I,ne,ve,re,ze,Ue,ct,Fe="sizzle"+1*new Date,me=e.document,st=0,Te=0,je=Xi(),ri=Xi(),Vi=Xi(),ft=Xi(),cr=function(g,w){return g===w&&(B=!0),0},fr={}.hasOwnProperty,ot=[],Kt=ot.pop,xt=ot.push,Zt=ot.push,ds=ot.slice,dr=function(g,w){for(var T=0,M=g.length;T+~]|"+Ae+")"+Ae+"*"),Ho=new RegExp(Ae+"|>"),Uo=new RegExp(Kn),zo=new RegExp("^"+hr+"$"),Yi={ID:new RegExp("^#("+hr+")"),CLASS:new RegExp("^\\.("+hr+")"),TAG:new RegExp("^("+hr+"|[*])"),ATTR:new RegExp("^"+hs),PSEUDO:new RegExp("^"+Kn),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+Ae+"*(even|odd|(([+-]|)(\\d*)n|)"+Ae+"*(?:([+-]|)"+Ae+"*(\\d+)|))"+Ae+"*\\)|)","i"),bool:new RegExp("^(?:"+Jn+")$","i"),needsContext:new RegExp("^"+Ae+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+Ae+"*((?:-\\d)?\\d*)"+Ae+"*\\)|)(?=[^-]|$)","i")},qo=/HTML$/i,Vo=/^(?:input|select|textarea|button)$/i,Go=/^h\d$/i,ii=/^[^{]+\{\s*\[native \w/,Yo=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,Zn=/[+~]/,Bt=new RegExp("\\\\[\\da-fA-F]{1,6}"+Ae+"?|\\\\([^\\r\\n\\f])","g"),Ht=function(g,w){var T="0x"+g.slice(1)-65536;return w||(T<0?String.fromCharCode(T+65536):String.fromCharCode(T>>10|55296,T&1023|56320))},gs=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ms=function(g,w){return w?g==="\0"?"\uFFFD":g.slice(0,-1)+"\\"+g.charCodeAt(g.length-1).toString(16)+" ":"\\"+g},vs=function(){D()},Xo=Ji(function(g){return g.disabled===!0&&g.nodeName.toLowerCase()==="fieldset"},{dir:"parentNode",next:"legend"});try{Zt.apply(ot=ds.call(me.childNodes),me.childNodes),ot[me.childNodes.length].nodeType}catch(g){Zt={apply:ot.length?function(w,T){xt.apply(w,ds.call(T))}:function(w,T){for(var M=w.length,P=0;w[M++]=T[P++];);w.length=M-1}}}function Re(g,w,T,M){var P,O,H,Q,J,ue,se,he=w&&w.ownerDocument,we=w?w.nodeType:9;if(T=T||[],typeof g!="string"||!g||we!==1&&we!==9&&we!==11)return T;if(!M&&(D(w),w=w||I,ve)){if(we!==11&&(J=Yo.exec(g)))if(P=J[1]){if(we===9)if(H=w.getElementById(P)){if(H.id===P)return T.push(H),T}else return T;else if(he&&(H=he.getElementById(P))&&ct(w,H)&&H.id===P)return T.push(H),T}else{if(J[2])return Zt.apply(T,w.getElementsByTagName(g)),T;if((P=J[3])&&n.getElementsByClassName&&w.getElementsByClassName)return Zt.apply(T,w.getElementsByClassName(P)),T}if(n.qsa&&!ft[g+" "]&&(!re||!re.test(g))&&(we!==1||w.nodeName.toLowerCase()!=="object")){if(se=g,he=w,we===1&&(Ho.test(g)||ps.test(g))){for(he=Zn.test(g)&&ta(w.parentNode)||w,(he!==w||!n.scope)&&((Q=w.getAttribute("id"))?Q=Q.replace(gs,ms):w.setAttribute("id",Q=Fe)),ue=h(g),O=ue.length;O--;)ue[O]=(Q?"#"+Q:":scope")+" "+Qi(ue[O]);se=ue.join(",")}try{if(n.cssSupportsSelector&&!CSS.supports("selector(:is("+se+"))"))throw new Error;return Zt.apply(T,he.querySelectorAll(se)),T}catch(Ie){ft(g,!0)}finally{Q===Fe&&w.removeAttribute("id")}}}return x(g.replace(Gi,"$1"),w,T,M)}function Xi(){var g=[];function w(T,M){return g.push(T+" ")>s.cacheLength&&delete w[g.shift()],w[T+" "]=M}return w}function Tt(g){return g[Fe]=!0,g}function wt(g){var w=I.createElement("fieldset");try{return!!g(w)}catch(T){return!1}finally{w.parentNode&&w.parentNode.removeChild(w),w=null}}function ea(g,w){for(var T=g.split("|"),M=T.length;M--;)s.attrHandle[T[M]]=w}function bs(g,w){var T=w&&g,M=T&&g.nodeType===1&&w.nodeType===1&&g.sourceIndex-w.sourceIndex;if(M)return M;if(T){for(;T=T.nextSibling;)if(T===w)return-1}return g?1:-1}function Qo(g){return function(w){var T=w.nodeName.toLowerCase();return T==="input"&&w.type===g}}function Jo(g){return function(w){var T=w.nodeName.toLowerCase();return(T==="input"||T==="button")&&w.type===g}}function ys(g){return function(w){return"form"in w?w.parentNode&&w.disabled===!1?"label"in w?"label"in w.parentNode?w.parentNode.disabled===g:w.disabled===g:w.isDisabled===g||w.isDisabled!==!g&&Xo(w)===g:w.disabled===g:"label"in w?w.disabled===g:!1}}function pr(g){return Tt(function(w){return w=+w,Tt(function(T,M){for(var P,O=g([],T.length,w),H=O.length;H--;)T[P=O[H]]&&(T[P]=!(M[P]=T[P]))})})}function ta(g){return g&&typeof g.getElementsByTagName!="undefined"&&g}n=Re.support={},f=Re.isXML=function(g){var w=g&&g.namespaceURI,T=g&&(g.ownerDocument||g).documentElement;return!qo.test(w||T&&T.nodeName||"HTML")},D=Re.setDocument=function(g){var w,T,M=g?g.ownerDocument||g:me;return M==I||M.nodeType!==9||!M.documentElement||(I=M,ne=I.documentElement,ve=!f(I),me!=I&&(T=I.defaultView)&&T.top!==T&&(T.addEventListener?T.addEventListener("unload",vs,!1):T.attachEvent&&T.attachEvent("onunload",vs)),n.scope=wt(function(P){return ne.appendChild(P).appendChild(I.createElement("div")),typeof P.querySelectorAll!="undefined"&&!P.querySelectorAll(":scope fieldset div").length}),n.cssSupportsSelector=wt(function(){return CSS.supports("selector(*)")&&I.querySelectorAll(":is(:jqfake)")&&!CSS.supports("selector(:is(*,:jqfake))")}),n.attributes=wt(function(P){return P.className="i",!P.getAttribute("className")}),n.getElementsByTagName=wt(function(P){return P.appendChild(I.createComment("")),!P.getElementsByTagName("*").length}),n.getElementsByClassName=ii.test(I.getElementsByClassName),n.getById=wt(function(P){return ne.appendChild(P).id=Fe,!I.getElementsByName||!I.getElementsByName(Fe).length}),n.getById?(s.filter.ID=function(P){var O=P.replace(Bt,Ht);return function(H){return H.getAttribute("id")===O}},s.find.ID=function(P,O){if(typeof O.getElementById!="undefined"&&ve){var H=O.getElementById(P);return H?[H]:[]}}):(s.filter.ID=function(P){var O=P.replace(Bt,Ht);return function(H){var Q=typeof H.getAttributeNode!="undefined"&&H.getAttributeNode("id");return Q&&Q.value===O}},s.find.ID=function(P,O){if(typeof O.getElementById!="undefined"&&ve){var H,Q,J,ue=O.getElementById(P);if(ue){if(H=ue.getAttributeNode("id"),H&&H.value===P)return[ue];for(J=O.getElementsByName(P),Q=0;ue=J[Q++];)if(H=ue.getAttributeNode("id"),H&&H.value===P)return[ue]}return[]}}),s.find.TAG=n.getElementsByTagName?function(P,O){if(typeof O.getElementsByTagName!="undefined")return O.getElementsByTagName(P);if(n.qsa)return O.querySelectorAll(P)}:function(P,O){var H,Q=[],J=0,ue=O.getElementsByTagName(P);if(P==="*"){for(;H=ue[J++];)H.nodeType===1&&Q.push(H);return Q}return ue},s.find.CLASS=n.getElementsByClassName&&function(P,O){if(typeof O.getElementsByClassName!="undefined"&&ve)return O.getElementsByClassName(P)},ze=[],re=[],(n.qsa=ii.test(I.querySelectorAll))&&(wt(function(P){var O;ne.appendChild(P).innerHTML="",P.querySelectorAll("[msallowcapture^='']").length&&re.push("[*^$]="+Ae+`*(?:''|"")`),P.querySelectorAll("[selected]").length||re.push("\\["+Ae+"*(?:value|"+Jn+")"),P.querySelectorAll("[id~="+Fe+"-]").length||re.push("~="),O=I.createElement("input"),O.setAttribute("name",""),P.appendChild(O),P.querySelectorAll("[name='']").length||re.push("\\["+Ae+"*name"+Ae+"*="+Ae+`*(?:''|"")`),P.querySelectorAll(":checked").length||re.push(":checked"),P.querySelectorAll("a#"+Fe+"+*").length||re.push(".#.+[+~]"),P.querySelectorAll("\\\f"),re.push("[\\r\\n\\f]")}),wt(function(P){P.innerHTML="";var O=I.createElement("input");O.setAttribute("type","hidden"),P.appendChild(O).setAttribute("name","D"),P.querySelectorAll("[name=d]").length&&re.push("name"+Ae+"*[*^$|!~]?="),P.querySelectorAll(":enabled").length!==2&&re.push(":enabled",":disabled"),ne.appendChild(P).disabled=!0,P.querySelectorAll(":disabled").length!==2&&re.push(":enabled",":disabled"),P.querySelectorAll("*,:x"),re.push(",.*:")})),(n.matchesSelector=ii.test(Ue=ne.matches||ne.webkitMatchesSelector||ne.mozMatchesSelector||ne.oMatchesSelector||ne.msMatchesSelector))&&wt(function(P){n.disconnectedMatch=Ue.call(P,"*"),Ue.call(P,"[s!='']:x"),ze.push("!=",Kn)}),n.cssSupportsSelector||re.push(":has"),re=re.length&&new RegExp(re.join("|")),ze=ze.length&&new RegExp(ze.join("|")),w=ii.test(ne.compareDocumentPosition),ct=w||ii.test(ne.contains)?function(P,O){var H=P.nodeType===9&&P.documentElement||P,Q=O&&O.parentNode;return P===Q||!!(Q&&Q.nodeType===1&&(H.contains?H.contains(Q):P.compareDocumentPosition&&P.compareDocumentPosition(Q)&16))}:function(P,O){if(O){for(;O=O.parentNode;)if(O===P)return!0}return!1},cr=w?function(P,O){if(P===O)return B=!0,0;var H=!P.compareDocumentPosition-!O.compareDocumentPosition;return H||(H=(P.ownerDocument||P)==(O.ownerDocument||O)?P.compareDocumentPosition(O):1,H&1||!n.sortDetached&&O.compareDocumentPosition(P)===H?P==I||P.ownerDocument==me&&ct(me,P)?-1:O==I||O.ownerDocument==me&&ct(me,O)?1:R?dr(R,P)-dr(R,O):0:H&4?-1:1)}:function(P,O){if(P===O)return B=!0,0;var H,Q=0,J=P.parentNode,ue=O.parentNode,se=[P],he=[O];if(!J||!ue)return P==I?-1:O==I?1:J?-1:ue?1:R?dr(R,P)-dr(R,O):0;if(J===ue)return bs(P,O);for(H=P;H=H.parentNode;)se.unshift(H);for(H=O;H=H.parentNode;)he.unshift(H);for(;se[Q]===he[Q];)Q++;return Q?bs(se[Q],he[Q]):se[Q]==me?-1:he[Q]==me?1:0}),I},Re.matches=function(g,w){return Re(g,null,null,w)},Re.matchesSelector=function(g,w){if(D(g),n.matchesSelector&&ve&&!ft[w+" "]&&(!ze||!ze.test(w))&&(!re||!re.test(w)))try{var T=Ue.call(g,w);if(T||n.disconnectedMatch||g.document&&g.document.nodeType!==11)return T}catch(M){ft(w,!0)}return Re(w,I,null,[g]).length>0},Re.contains=function(g,w){return(g.ownerDocument||g)!=I&&D(g),ct(g,w)},Re.attr=function(g,w){(g.ownerDocument||g)!=I&&D(g);var T=s.attrHandle[w.toLowerCase()],M=T&&fr.call(s.attrHandle,w.toLowerCase())?T(g,w,!ve):void 0;return M!==void 0?M:n.attributes||!ve?g.getAttribute(w):(M=g.getAttributeNode(w))&&M.specified?M.value:null},Re.escape=function(g){return(g+"").replace(gs,ms)},Re.error=function(g){throw new Error("Syntax error, unrecognized expression: "+g)},Re.uniqueSort=function(g){var w,T=[],M=0,P=0;if(B=!n.detectDuplicates,R=!n.sortStable&&g.slice(0),g.sort(cr),B){for(;w=g[P++];)w===g[P]&&(M=T.push(P));for(;M--;)g.splice(T[M],1)}return R=null,g},c=Re.getText=function(g){var w,T="",M=0,P=g.nodeType;if(P){if(P===1||P===9||P===11){if(typeof g.textContent=="string")return g.textContent;for(g=g.firstChild;g;g=g.nextSibling)T+=c(g)}else if(P===3||P===4)return g.nodeValue}else for(;w=g[M++];)T+=c(w);return T},s=Re.selectors={cacheLength:50,createPseudo:Tt,match:Yi,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(g){return g[1]=g[1].replace(Bt,Ht),g[3]=(g[3]||g[4]||g[5]||"").replace(Bt,Ht),g[2]==="~="&&(g[3]=" "+g[3]+" "),g.slice(0,4)},CHILD:function(g){return g[1]=g[1].toLowerCase(),g[1].slice(0,3)==="nth"?(g[3]||Re.error(g[0]),g[4]=+(g[4]?g[5]+(g[6]||1):2*(g[3]==="even"||g[3]==="odd")),g[5]=+(g[7]+g[8]||g[3]==="odd")):g[3]&&Re.error(g[0]),g},PSEUDO:function(g){var w,T=!g[6]&&g[2];return Yi.CHILD.test(g[0])?null:(g[3]?g[2]=g[4]||g[5]||"":T&&Uo.test(T)&&(w=h(T,!0))&&(w=T.indexOf(")",T.length-w)-T.length)&&(g[0]=g[0].slice(0,w),g[2]=T.slice(0,w)),g.slice(0,3))}},filter:{TAG:function(g){var w=g.replace(Bt,Ht).toLowerCase();return g==="*"?function(){return!0}:function(T){return T.nodeName&&T.nodeName.toLowerCase()===w}},CLASS:function(g){var w=je[g+" "];return w||(w=new RegExp("(^|"+Ae+")"+g+"("+Ae+"|$)"))&&je(g,function(T){return w.test(typeof T.className=="string"&&T.className||typeof T.getAttribute!="undefined"&&T.getAttribute("class")||"")})},ATTR:function(g,w,T){return function(M){var P=Re.attr(M,g);return P==null?w==="!=":w?(P+="",w==="="?P===T:w==="!="?P!==T:w==="^="?T&&P.indexOf(T)===0:w==="*="?T&&P.indexOf(T)>-1:w==="$="?T&&P.slice(-T.length)===T:w==="~="?(" "+P.replace(jo," ")+" ").indexOf(T)>-1:w==="|="?P===T||P.slice(0,T.length+1)===T+"-":!1):!0}},CHILD:function(g,w,T,M,P){var O=g.slice(0,3)!=="nth",H=g.slice(-4)!=="last",Q=w==="of-type";return M===1&&P===0?function(J){return!!J.parentNode}:function(J,ue,se){var he,we,Ie,ce,qe,et,dt=O!==H?"nextSibling":"previousSibling",Ne=J.parentNode,ni=Q&&J.nodeName.toLowerCase(),ai=!se&&!Q,ht=!1;if(Ne){if(O){for(;dt;){for(ce=J;ce=ce[dt];)if(Q?ce.nodeName.toLowerCase()===ni:ce.nodeType===1)return!1;et=dt=g==="only"&&!et&&"nextSibling"}return!0}if(et=[H?Ne.firstChild:Ne.lastChild],H&&ai){for(ce=Ne,Ie=ce[Fe]||(ce[Fe]={}),we=Ie[ce.uniqueID]||(Ie[ce.uniqueID]={}),he=we[g]||[],qe=he[0]===st&&he[1],ht=qe&&he[2],ce=qe&&Ne.childNodes[qe];ce=++qe&&ce&&ce[dt]||(ht=qe=0)||et.pop();)if(ce.nodeType===1&&++ht&&ce===J){we[g]=[st,qe,ht];break}}else if(ai&&(ce=J,Ie=ce[Fe]||(ce[Fe]={}),we=Ie[ce.uniqueID]||(Ie[ce.uniqueID]={}),he=we[g]||[],qe=he[0]===st&&he[1],ht=qe),ht===!1)for(;(ce=++qe&&ce&&ce[dt]||(ht=qe=0)||et.pop())&&!((Q?ce.nodeName.toLowerCase()===ni:ce.nodeType===1)&&++ht&&(ai&&(Ie=ce[Fe]||(ce[Fe]={}),we=Ie[ce.uniqueID]||(Ie[ce.uniqueID]={}),we[g]=[st,ht]),ce===J)););return ht-=P,ht===M||ht%M==0&&ht/M>=0}}},PSEUDO:function(g,w){var T,M=s.pseudos[g]||s.setFilters[g.toLowerCase()]||Re.error("unsupported pseudo: "+g);return M[Fe]?M(w):M.length>1?(T=[g,g,"",w],s.setFilters.hasOwnProperty(g.toLowerCase())?Tt(function(P,O){for(var H,Q=M(P,w),J=Q.length;J--;)H=dr(P,Q[J]),P[H]=!(O[H]=Q[J])}):function(P){return M(P,0,T)}):M}},pseudos:{not:Tt(function(g){var w=[],T=[],M=E(g.replace(Gi,"$1"));return M[Fe]?Tt(function(P,O,H,Q){for(var J,ue=M(P,null,Q,[]),se=P.length;se--;)(J=ue[se])&&(P[se]=!(O[se]=J))}):function(P,O,H){return w[0]=P,M(w,null,H,T),w[0]=null,!T.pop()}}),has:Tt(function(g){return function(w){return Re(g,w).length>0}}),contains:Tt(function(g){return g=g.replace(Bt,Ht),function(w){return(w.textContent||c(w)).indexOf(g)>-1}}),lang:Tt(function(g){return zo.test(g||"")||Re.error("unsupported lang: "+g),g=g.replace(Bt,Ht).toLowerCase(),function(w){var T;do if(T=ve?w.lang:w.getAttribute("xml:lang")||w.getAttribute("lang"))return T=T.toLowerCase(),T===g||T.indexOf(g+"-")===0;while((w=w.parentNode)&&w.nodeType===1);return!1}}),target:function(g){var w=e.location&&e.location.hash;return w&&w.slice(1)===g.id},root:function(g){return g===ne},focus:function(g){return g===I.activeElement&&(!I.hasFocus||I.hasFocus())&&!!(g.type||g.href||~g.tabIndex)},enabled:ys(!1),disabled:ys(!0),checked:function(g){var w=g.nodeName.toLowerCase();return w==="input"&&!!g.checked||w==="option"&&!!g.selected},selected:function(g){return g.parentNode&&g.parentNode.selectedIndex,g.selected===!0},empty:function(g){for(g=g.firstChild;g;g=g.nextSibling)if(g.nodeType<6)return!1;return!0},parent:function(g){return!s.pseudos.empty(g)},header:function(g){return Go.test(g.nodeName)},input:function(g){return Vo.test(g.nodeName)},button:function(g){var w=g.nodeName.toLowerCase();return w==="input"&&g.type==="button"||w==="button"},text:function(g){var w;return g.nodeName.toLowerCase()==="input"&&g.type==="text"&&((w=g.getAttribute("type"))==null||w.toLowerCase()==="text")},first:pr(function(){return[0]}),last:pr(function(g,w){return[w-1]}),eq:pr(function(g,w,T){return[T<0?T+w:T]}),even:pr(function(g,w){for(var T=0;Tw?w:T;--M>=0;)g.push(M);return g}),gt:pr(function(g,w,T){for(var M=T<0?T+w:T;++M1?function(w,T,M){for(var P=g.length;P--;)if(!g[P](w,T,M))return!1;return!0}:g[0]}function Ko(g,w,T){for(var M=0,P=w.length;M-1&&(H[se]=!(Q[se]=we))}}else Ne=Ki(Ne===Q?Ne.splice(qe,Ne.length):Ne),P?P(null,Q,Ne,ue):Zt.apply(Q,Ne)})}function na(g){for(var w,T,M,P=g.length,O=s.relative[g[0].type],H=O||s.relative[" "],Q=O?1:0,J=Ji(function(he){return he===w},H,!0),ue=Ji(function(he){return dr(w,he)>-1},H,!0),se=[function(he,we,Ie){var ce=!O&&(Ie||we!==F)||((w=we).nodeType?J(he,we,Ie):ue(he,we,Ie));return w=null,ce}];Q1&&ra(se),Q>1&&Qi(g.slice(0,Q-1).concat({value:g[Q-2].type===" "?"*":""})).replace(Gi,"$1"),T,Q0,M=g.length>0,P=function(O,H,Q,J,ue){var se,he,we,Ie=0,ce="0",qe=O&&[],et=[],dt=F,Ne=O||M&&s.find.TAG("*",ue),ni=st+=dt==null?1:Math.random()||.1,ai=Ne.length;for(ue&&(F=H==I||H||ue);ce!==ai&&(se=Ne[ce])!=null;ce++){if(M&&se){for(he=0,!H&&se.ownerDocument!=I&&(D(se),Q=!ve);we=g[he++];)if(we(se,H||I,Q)){J.push(se);break}ue&&(st=ni)}T&&((se=!we&&se)&&Ie--,O&&qe.push(se))}if(Ie+=ce,T&&ce!==Ie){for(he=0;we=w[he++];)we(qe,et,H,Q);if(O){if(Ie>0)for(;ce--;)qe[ce]||et[ce]||(et[ce]=Kt.call(J));et=Ki(et)}Zt.apply(J,et),ue&&!O&&et.length>0&&Ie+w.length>1&&Re.uniqueSort(J)}return ue&&(st=ni,F=dt),qe};return T?Tt(P):P}return E=Re.compile=function(g,w){var T,M=[],P=[],O=Vi[g+" "];if(!O){for(w||(w=h(g)),T=w.length;T--;)O=na(w[T]),O[Fe]?M.push(O):P.push(O);O=Vi(g,Zo(P,M)),O.selector=g}return O},x=Re.select=function(g,w,T,M){var P,O,H,Q,J,ue=typeof g=="function"&&g,se=!M&&h(g=ue.selector||g);if(T=T||[],se.length===1){if(O=se[0]=se[0].slice(0),O.length>2&&(H=O[0]).type==="ID"&&w.nodeType===9&&ve&&s.relative[O[1].type]){if(w=(s.find.ID(H.matches[0].replace(Bt,Ht),w)||[])[0],w)ue&&(w=w.parentNode);else return T;g=g.slice(O.shift().value.length)}for(P=Yi.needsContext.test(g)?0:O.length;P--&&(H=O[P],!s.relative[Q=H.type]);)if((J=s.find[Q])&&(M=J(H.matches[0].replace(Bt,Ht),Zn.test(O[0].type)&&ta(w.parentNode)||w))){if(O.splice(P,1),g=M.length&&Qi(O),!g)return Zt.apply(T,M),T;break}}return(ue||E(g,se))(M,w,!ve,T,!w||Zn.test(g)&&ta(w.parentNode)||w),T},n.sortStable=Fe.split("").sort(cr).join("")===Fe,n.detectDuplicates=!!B,D(),n.sortDetached=wt(function(g){return g.compareDocumentPosition(I.createElement("fieldset"))&1}),wt(function(g){return g.innerHTML="",g.firstChild.getAttribute("href")==="#"})||ea("type|href|height|width",function(g,w,T){if(!T)return g.getAttribute(w,w.toLowerCase()==="type"?1:2)}),(!n.attributes||!wt(function(g){return g.innerHTML="",g.firstChild.setAttribute("value",""),g.firstChild.getAttribute("value")===""}))&&ea("value",function(g,w,T){if(!T&&g.nodeName.toLowerCase()==="input")return g.defaultValue}),wt(function(g){return g.getAttribute("disabled")==null})||ea(Jn,function(g,w,T){var M;if(!T)return g[w]===!0?w.toLowerCase():(M=g.getAttributeNode(w))&&M.specified?M.value:null}),Re}(l);o.find=ae,o.expr=ae.selectors,o.expr[":"]=o.expr.pseudos,o.uniqueSort=o.unique=ae.uniqueSort,o.text=ae.getText,o.isXMLDoc=ae.isXML,o.contains=ae.contains,o.escapeSelector=ae.escape;var oe=function(e,r,n){for(var s=[],c=n!==void 0;(e=e[r])&&e.nodeType!==9;)if(e.nodeType===1){if(c&&o(e).is(n))break;s.push(e)}return s},_e=function(e,r){for(var n=[];e;e=e.nextSibling)e.nodeType===1&&e!==r&&n.push(e);return n},He=o.expr.match.needsContext;function Me(e,r){return e.nodeName&&e.nodeName.toLowerCase()===r.toLowerCase()}var tt=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function Qe(e,r,n){return q(r)?o.grep(e,function(s,c){return!!r.call(s,c,s)!==n}):r.nodeType?o.grep(e,function(s){return s===r!==n}):typeof r!="string"?o.grep(e,function(s){return y.call(r,s)>-1!==n}):o.filter(r,e,n)}o.filter=function(e,r,n){var s=r[0];return n&&(e=":not("+e+")"),r.length===1&&s.nodeType===1?o.find.matchesSelector(s,e)?[s]:[]:o.find.matches(e,o.grep(r,function(c){return c.nodeType===1}))},o.fn.extend({find:function(e){var r,n,s=this.length,c=this;if(typeof e!="string")return this.pushStack(o(e).filter(function(){for(r=0;r1?o.uniqueSort(n):n},filter:function(e){return this.pushStack(Qe(this,e||[],!1))},not:function(e){return this.pushStack(Qe(this,e||[],!0))},is:function(e){return!!Qe(this,typeof e=="string"&&He.test(e)?o(e):e||[],!1).length}});var mt,rr=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,wr=o.fn.init=function(e,r,n){var s,c;if(!e)return this;if(n=n||mt,typeof e=="string")if(e[0]==="<"&&e[e.length-1]===">"&&e.length>=3?s=[null,e,null]:s=rr.exec(e),s&&(s[1]||!r))if(s[1]){if(r=r instanceof o?r[0]:r,o.merge(this,o.parseHTML(s[1],r&&r.nodeType?r.ownerDocument||r:K,!0)),tt.test(s[1])&&o.isPlainObject(r))for(s in r)q(this[s])?this[s](r[s]):this.attr(s,r[s]);return this}else return c=K.getElementById(s[2]),c&&(this[0]=c,this.length=1),this;else return!r||r.jquery?(r||n).find(e):this.constructor(r).find(e);else{if(e.nodeType)return this[0]=e,this.length=1,this;if(q(e))return n.ready!==void 0?n.ready(e):e(o)}return o.makeArray(e,this)};wr.prototype=o.fn,mt=o(K);var Ir=/^(?:parents|prev(?:Until|All))/,Yt={children:!0,contents:!0,next:!0,prev:!0};o.fn.extend({has:function(e){var r=o(e,this),n=r.length;return this.filter(function(){for(var s=0;s-1:n.nodeType===1&&o.find.matchesSelector(n,e))){f.push(n);break}}return this.pushStack(f.length>1?o.uniqueSort(f):f)},index:function(e){return e?typeof e=="string"?y.call(o(e),this[0]):y.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,r){return this.pushStack(o.uniqueSort(o.merge(this.get(),o(e,r))))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}});function Mr(e,r){for(;(e=e[r])&&e.nodeType!==1;);return e}o.each({parent:function(e){var r=e.parentNode;return r&&r.nodeType!==11?r:null},parents:function(e){return oe(e,"parentNode")},parentsUntil:function(e,r,n){return oe(e,"parentNode",n)},next:function(e){return Mr(e,"nextSibling")},prev:function(e){return Mr(e,"previousSibling")},nextAll:function(e){return oe(e,"nextSibling")},prevAll:function(e){return oe(e,"previousSibling")},nextUntil:function(e,r,n){return oe(e,"nextSibling",n)},prevUntil:function(e,r,n){return oe(e,"previousSibling",n)},siblings:function(e){return _e((e.parentNode||{}).firstChild,e)},children:function(e){return _e(e.firstChild)},contents:function(e){return e.contentDocument!=null&&a(e.contentDocument)?e.contentDocument:(Me(e,"template")&&(e=e.content||e),o.merge([],e.childNodes))}},function(e,r){o.fn[e]=function(n,s){var c=o.map(this,r,n);return e.slice(-5)!=="Until"&&(s=n),s&&typeof s=="string"&&(c=o.filter(s,c)),this.length>1&&(Yt[e]||o.uniqueSort(c),Ir.test(e)&&c.reverse()),this.pushStack(c)}});var vt=/[^\x20\t\r\n\f]+/g;function An(e){var r={};return o.each(e.match(vt)||[],function(n,s){r[s]=!0}),r}o.Callbacks=function(e){e=typeof e=="string"?An(e):o.extend({},e);var r,n,s,c,f=[],h=[],E=-1,x=function(){for(c=c||e.once,s=r=!0;h.length;E=-1)for(n=h.shift();++E-1;)f.splice(D,1),D<=E&&E--}),this},has:function(R){return R?o.inArray(R,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return c=h=[],f=n="",this},disabled:function(){return!f},lock:function(){return c=h=[],!n&&!r&&(f=n=""),this},locked:function(){return!!c},fireWith:function(R,B){return c||(B=B||[],B=[R,B.slice?B.slice():B],h.push(B),r||x()),this},fire:function(){return F.fireWith(this,arguments),this},fired:function(){return!!s}};return F};function Je(e){return e}function ir(e){throw e}function Pi(e,r,n,s){var c;try{e&&q(c=e.promise)?c.call(e).done(r).fail(n):e&&q(c=e.then)?c.call(e,r,n):r.apply(void 0,[e].slice(s))}catch(f){n.apply(void 0,[f])}}o.extend({Deferred:function(e){var r=[["notify","progress",o.Callbacks("memory"),o.Callbacks("memory"),2],["resolve","done",o.Callbacks("once memory"),o.Callbacks("once memory"),0,"resolved"],["reject","fail",o.Callbacks("once memory"),o.Callbacks("once memory"),1,"rejected"]],n="pending",s={state:function(){return n},always:function(){return c.done(arguments).fail(arguments),this},catch:function(f){return s.then(null,f)},pipe:function(){var f=arguments;return o.Deferred(function(h){o.each(r,function(E,x){var F=q(f[x[4]])&&f[x[4]];c[x[1]](function(){var R=F&&F.apply(this,arguments);R&&q(R.promise)?R.promise().progress(h.notify).done(h.resolve).fail(h.reject):h[x[0]+"With"](this,F?[R]:arguments)})}),f=null}).promise()},then:function(f,h,E){var x=0;function F(R,B,D,I){return function(){var ne=this,ve=arguments,re=function(){var Ue,ct;if(!(R=x&&(D!==ir&&(ne=void 0,ve=[Ue]),B.rejectWith(ne,ve))}};R?ze():(o.Deferred.getStackHook&&(ze.stackTrace=o.Deferred.getStackHook()),l.setTimeout(ze))}}return o.Deferred(function(R){r[0][3].add(F(0,R,q(E)?E:Je,R.notifyWith)),r[1][3].add(F(0,R,q(f)?f:Je)),r[2][3].add(F(0,R,q(h)?h:ir))}).promise()},promise:function(f){return f!=null?o.extend(f,s):s}},c={};return o.each(r,function(f,h){var E=h[2],x=h[5];s[h[1]]=E.add,x&&E.add(function(){n=x},r[3-f][2].disable,r[3-f][3].disable,r[0][2].lock,r[0][3].lock),E.add(h[3].fire),c[h[0]]=function(){return c[h[0]+"With"](this===c?void 0:this,arguments),this},c[h[0]+"With"]=E.fireWith}),s.promise(c),e&&e.call(c,c),c},when:function(e){var r=arguments.length,n=r,s=Array(n),c=u.call(arguments),f=o.Deferred(),h=function(E){return function(x){s[E]=this,c[E]=arguments.length>1?u.call(arguments):x,--r||f.resolveWith(s,c)}};if(r<=1&&(Pi(e,f.done(h(n)).resolve,f.reject,!r),f.state()==="pending"||q(c[n]&&c[n].then)))return f.then();for(;n--;)Pi(c[n],h(n),f.reject);return f.promise()}});var Fn=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;o.Deferred.exceptionHook=function(e,r){l.console&&l.console.warn&&e&&Fn.test(e.name)&&l.console.warn("jQuery.Deferred exception: "+e.message,e.stack,r)},o.readyException=function(e){l.setTimeout(function(){throw e})};var Nr=o.Deferred();o.fn.ready=function(e){return Nr.then(e).catch(function(r){o.readyException(r)}),this},o.extend({isReady:!1,readyWait:1,ready:function(e){(e===!0?--o.readyWait:o.isReady)||(o.isReady=!0,!(e!==!0&&--o.readyWait>0)&&Nr.resolveWith(K,[o]))}}),o.ready.then=Nr.then;function Er(){K.removeEventListener("DOMContentLoaded",Er),l.removeEventListener("load",Er),o.ready()}K.readyState==="complete"||K.readyState!=="loading"&&!K.documentElement.doScroll?l.setTimeout(o.ready):(K.addEventListener("DOMContentLoaded",Er),l.addEventListener("load",Er));var _t=function(e,r,n,s,c,f,h){var E=0,x=e.length,F=n==null;if(be(n)==="object"){c=!0;for(E in n)_t(e,r,E,n[E],!0,f,h)}else if(s!==void 0&&(c=!0,q(s)||(h=!0),F&&(h?(r.call(e,s),r=null):(F=r,r=function(R,B,D){return F.call(o(R),D)})),r))for(;E1,null,!0)},removeData:function(e){return this.each(function(){$e.remove(this,e)})}}),o.extend({queue:function(e,r,n){var s;if(e)return r=(r||"fx")+"queue",s=le.get(e,r),n&&(!s||Array.isArray(n)?s=le.access(e,r,o.makeArray(n)):s.push(n)),s||[]},dequeue:function(e,r){r=r||"fx";var n=o.queue(e,r),s=n.length,c=n.shift(),f=o._queueHooks(e,r),h=function(){o.dequeue(e,r)};c==="inprogress"&&(c=n.shift(),s--),c&&(r==="fx"&&n.unshift("inprogress"),delete f.stop,c.call(e,h,f)),!s&&f&&f.empty.fire()},_queueHooks:function(e,r){var n=r+"queueHooks";return le.get(e,n)||le.access(e,n,{empty:o.Callbacks("once memory").add(function(){le.remove(e,[r+"queue",n])})})}}),o.fn.extend({queue:function(e,r){var n=2;return typeof e!="string"&&(r=e,e="fx",n--),arguments.length\x20\t\r\n\f]*)/i,jr=/^$|^module$|\/(?:java|ecma)script/i;(function(){var e=K.createDocumentFragment(),r=e.appendChild(K.createElement("div")),n=K.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),r.appendChild(n),U.checkClone=r.cloneNode(!0).cloneNode(!0).lastChild.checked,r.innerHTML="",U.noCloneChecked=!!r.cloneNode(!0).lastChild.defaultValue,r.innerHTML="",U.option=!!r.lastChild})();var Ke={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};Ke.tbody=Ke.tfoot=Ke.colgroup=Ke.caption=Ke.thead,Ke.th=Ke.td,U.option||(Ke.optgroup=Ke.option=[1,""]);function Ze(e,r){var n;return typeof e.getElementsByTagName!="undefined"?n=e.getElementsByTagName(r||"*"):typeof e.querySelectorAll!="undefined"?n=e.querySelectorAll(r||"*"):n=[],r===void 0||r&&Me(e,r)?o.merge([e],n):n}function Br(e,r){for(var n=0,s=e.length;n-1){c&&c.push(f);continue}if(F=Nt(f),h=Ze(B.appendChild(f),"script"),F&&Br(h),n)for(R=0;f=h[R++];)jr.test(f.type||"")&&n.push(f)}return B}var Li=/^([^.]*)(?:\.(.+)|)/;function rt(){return!0}function Qt(){return!1}function Mn(e,r){return e===Ri()==(r==="focus")}function Ri(){try{return K.activeElement}catch(e){}}function zr(e,r,n,s,c,f){var h,E;if(typeof r=="object"){typeof n!="string"&&(s=s||n,n=void 0);for(E in r)zr(e,E,n,s,r[E],f);return e}if(s==null&&c==null?(c=n,s=n=void 0):c==null&&(typeof n=="string"?(c=s,s=void 0):(c=s,s=n,n=void 0)),c===!1)c=Qt;else if(!c)return e;return f===1&&(h=c,c=function(x){return o().off(x),h.apply(this,arguments)},c.guid=h.guid||(h.guid=o.guid++)),e.each(function(){o.event.add(this,r,c,s,n)})}o.event={global:{},add:function(e,r,n,s,c){var f,h,E,x,F,R,B,D,I,ne,ve,re=le.get(e);if(!!nr(e))for(n.handler&&(f=n,n=f.handler,c=f.selector),c&&o.find.matchesSelector(At,c),n.guid||(n.guid=o.guid++),(x=re.events)||(x=re.events=Object.create(null)),(h=re.handle)||(h=re.handle=function(ze){return typeof o!="undefined"&&o.event.triggered!==ze.type?o.event.dispatch.apply(e,arguments):void 0}),r=(r||"").match(vt)||[""],F=r.length;F--;)E=Li.exec(r[F])||[],I=ve=E[1],ne=(E[2]||"").split(".").sort(),!!I&&(B=o.event.special[I]||{},I=(c?B.delegateType:B.bindType)||I,B=o.event.special[I]||{},R=o.extend({type:I,origType:ve,data:s,handler:n,guid:n.guid,selector:c,needsContext:c&&o.expr.match.needsContext.test(c),namespace:ne.join(".")},f),(D=x[I])||(D=x[I]=[],D.delegateCount=0,(!B.setup||B.setup.call(e,s,ne,h)===!1)&&e.addEventListener&&e.addEventListener(I,h)),B.add&&(B.add.call(e,R),R.handler.guid||(R.handler.guid=n.guid)),c?D.splice(D.delegateCount++,0,R):D.push(R),o.event.global[I]=!0)},remove:function(e,r,n,s,c){var f,h,E,x,F,R,B,D,I,ne,ve,re=le.hasData(e)&&le.get(e);if(!(!re||!(x=re.events))){for(r=(r||"").match(vt)||[""],F=r.length;F--;){if(E=Li.exec(r[F])||[],I=ve=E[1],ne=(E[2]||"").split(".").sort(),!I){for(I in x)o.event.remove(e,I+r[F],n,s,!0);continue}for(B=o.event.special[I]||{},I=(s?B.delegateType:B.bindType)||I,D=x[I]||[],E=E[2]&&new RegExp("(^|\\.)"+ne.join("\\.(?:.*\\.|)")+"(\\.|$)"),h=f=D.length;f--;)R=D[f],(c||ve===R.origType)&&(!n||n.guid===R.guid)&&(!E||E.test(R.namespace))&&(!s||s===R.selector||s==="**"&&R.selector)&&(D.splice(f,1),R.selector&&D.delegateCount--,B.remove&&B.remove.call(e,R));h&&!D.length&&((!B.teardown||B.teardown.call(e,ne,re.handle)===!1)&&o.removeEvent(e,I,re.handle),delete x[I])}o.isEmptyObject(x)&&le.remove(e,"handle events")}},dispatch:function(e){var r,n,s,c,f,h,E=new Array(arguments.length),x=o.event.fix(e),F=(le.get(this,"events")||Object.create(null))[x.type]||[],R=o.event.special[x.type]||{};for(E[0]=x,r=1;r=1)){for(;F!==this;F=F.parentNode||this)if(F.nodeType===1&&!(e.type==="click"&&F.disabled===!0)){for(f=[],h={},n=0;n-1:o.find(c,this,null,[F]).length),h[c]&&f.push(s);f.length&&E.push({elem:F,handlers:f})}}return F=this,x\s*$/g;function Ii(e,r){return Me(e,"table")&&Me(r.nodeType!==11?r:r.firstChild,"tr")&&o(e).children("tbody")[0]||e}function Wn(e){return e.type=(e.getAttribute("type")!==null)+"/"+e.type,e}function jn(e){return(e.type||"").slice(0,5)==="true/"?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Mi(e,r){var n,s,c,f,h,E,x;if(r.nodeType===1){if(le.hasData(e)&&(f=le.get(e),x=f.events,x)){le.remove(r,"handle events");for(c in x)for(n=0,s=x[c].length;n1&&typeof I=="string"&&!U.checkClone&&On.test(I))return e.each(function(ve){var re=e.eq(ve);ne&&(r[0]=I.call(this,ve,re.html())),$t(re,r,n,s)});if(B&&(c=Ur(r,e[0].ownerDocument,!1,e,s),f=c.firstChild,c.childNodes.length===1&&(c=f),f||s)){for(h=o.map(Ze(c,"script"),Wn),E=h.length;R0&&Br(h,!x&&Ze(e,"script")),E},cleanData:function(e){for(var r,n,s,c=o.event.special,f=0;(n=e[f])!==void 0;f++)if(nr(n)){if(r=n[le.expando]){if(r.events)for(s in r.events)c[s]?o.event.remove(n,s):o.removeEvent(n,s,r.handle);n[le.expando]=void 0}n[$e.expando]&&(n[$e.expando]=void 0)}}}),o.fn.extend({detach:function(e){return Ni(this,e,!0)},remove:function(e){return Ni(this,e)},text:function(e){return _t(this,function(r){return r===void 0?o.text(this):this.empty().each(function(){(this.nodeType===1||this.nodeType===11||this.nodeType===9)&&(this.textContent=r)})},null,e,arguments.length)},append:function(){return $t(this,arguments,function(e){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var r=Ii(this,e);r.appendChild(e)}})},prepend:function(){return $t(this,arguments,function(e){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var r=Ii(this,e);r.insertBefore(e,r.firstChild)}})},before:function(){return $t(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return $t(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,r=0;(e=this[r])!=null;r++)e.nodeType===1&&(o.cleanData(Ze(e,!1)),e.textContent="");return this},clone:function(e,r){return e=e==null?!1:e,r=r==null?e:r,this.map(function(){return o.clone(this,e,r)})},html:function(e){return _t(this,function(r){var n=this[0]||{},s=0,c=this.length;if(r===void 0&&n.nodeType===1)return n.innerHTML;if(typeof r=="string"&&!Nn.test(r)&&!Ke[(Wr.exec(r)||["",""])[1].toLowerCase()]){r=o.htmlPrefilter(r);try{for(;s=0&&(x+=Math.max(0,Math.ceil(e["offset"+r[0].toUpperCase()+r.slice(1)]-f-x-E-.5))||0),x}function ur(e,r,n){var s=kr(e),c=!U.boxSizingReliable()||n,f=c&&o.css(e,"boxSizing",!1,s)==="border-box",h=f,E=or(e,r,s),x="offset"+r[0].toUpperCase()+r.slice(1);if(qr.test(E)){if(!n)return E;E="auto"}return(!U.boxSizingReliable()&&f||!U.reliableTrDimensions()&&Me(e,"tr")||E==="auto"||!parseFloat(E)&&o.css(e,"display",!1,s)==="inline")&&e.getClientRects().length&&(f=o.css(e,"boxSizing",!1,s)==="border-box",h=x in e,h&&(E=e[x])),E=parseFloat(E)||0,E+Xr(e,r,n||(f?"border":"content"),h,s,E)+"px"}o.extend({cssHooks:{opacity:{get:function(e,r){if(r){var n=or(e,"opacity");return n===""?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,r,n,s){if(!(!e||e.nodeType===3||e.nodeType===8||!e.style)){var c,f,h,E=bt(r),x=Vr.test(r),F=e.style;if(x||(r=Gr(E)),h=o.cssHooks[r]||o.cssHooks[E],n!==void 0){if(f=typeof n,f==="string"&&(c=Mt.exec(n))&&c[1]&&(n=Or(e,r,c),f="number"),n==null||n!==n)return;f==="number"&&!x&&(n+=c&&c[3]||(o.cssNumber[E]?"":"px")),!U.clearCloneStyle&&n===""&&r.indexOf("background")===0&&(F[r]="inherit"),(!h||!("set"in h)||(n=h.set(e,n,s))!==void 0)&&(x?F.setProperty(r,n):F[r]=n)}else return h&&"get"in h&&(c=h.get(e,!1,s))!==void 0?c:F[r]}},css:function(e,r,n,s){var c,f,h,E=bt(r),x=Vr.test(r);return x||(r=Gr(E)),h=o.cssHooks[r]||o.cssHooks[E],h&&"get"in h&&(c=h.get(e,!0,n)),c===void 0&&(c=or(e,r,s)),c==="normal"&&r in Yr&&(c=Yr[r]),n===""||n?(f=parseFloat(c),n===!0||isFinite(f)?f||0:c):c}}),o.each(["height","width"],function(e,r){o.cssHooks[r]={get:function(n,s,c){if(s)return Ui.test(o.css(n,"display"))&&(!n.getClientRects().length||!n.getBoundingClientRect().width)?Oi(n,lr,function(){return ur(n,r,c)}):ur(n,r,c)},set:function(n,s,c){var f,h=kr(n),E=!U.scrollboxSize()&&h.position==="absolute",x=E||c,F=x&&o.css(n,"boxSizing",!1,h)==="border-box",R=c?Xr(n,r,c,F,h):0;return F&&E&&(R-=Math.ceil(n["offset"+r[0].toUpperCase()+r.slice(1)]-parseFloat(h[r])-Xr(n,r,"border",!1,h)-.5)),R&&(f=Mt.exec(s))&&(f[3]||"px")!=="px"&&(n.style[r]=s,s=o.css(n,r)),Wt(n,s,R)}}}),o.cssHooks.marginLeft=Wi(U.reliableMarginLeft,function(e,r){if(r)return(parseFloat(or(e,"marginLeft"))||e.getBoundingClientRect().left-Oi(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),o.each({margin:"",padding:"",border:"Width"},function(e,r){o.cssHooks[e+r]={expand:function(n){for(var s=0,c={},f=typeof n=="string"?n.split(" "):[n];s<4;s++)c[e+yt[s]+r]=f[s]||f[s-2]||f[0];return c}},e!=="margin"&&(o.cssHooks[e+r].set=Wt)}),o.fn.extend({css:function(e,r){return _t(this,function(n,s,c){var f,h,E={},x=0;if(Array.isArray(s)){for(f=kr(n),h=s.length;x1)}});function Ge(e,r,n,s,c){return new Ge.prototype.init(e,r,n,s,c)}o.Tween=Ge,Ge.prototype={constructor:Ge,init:function(e,r,n,s,c,f){this.elem=e,this.prop=n,this.easing=c||o.easing._default,this.options=r,this.start=this.now=this.cur(),this.end=s,this.unit=f||(o.cssNumber[n]?"":"px")},cur:function(){var e=Ge.propHooks[this.prop];return e&&e.get?e.get(this):Ge.propHooks._default.get(this)},run:function(e){var r,n=Ge.propHooks[this.prop];return this.options.duration?this.pos=r=o.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=r=e,this.now=(this.end-this.start)*r+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):Ge.propHooks._default.set(this),this}},Ge.prototype.init.prototype=Ge.prototype,Ge.propHooks={_default:{get:function(e){var r;return e.elem.nodeType!==1||e.elem[e.prop]!=null&&e.elem.style[e.prop]==null?e.elem[e.prop]:(r=o.css(e.elem,e.prop,""),!r||r==="auto"?0:r)},set:function(e){o.fx.step[e.prop]?o.fx.step[e.prop](e):e.elem.nodeType===1&&(o.cssHooks[e.prop]||e.elem.style[Gr(e.prop)]!=null)?o.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},Ge.propHooks.scrollTop=Ge.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},o.easing={linear:function(e){return e},swing:function(e){return .5-Math.cos(e*Math.PI)/2},_default:"swing"},o.fx=Ge.prototype.init,o.fx.step={};var Jt,Pr,Qr=/^(?:toggle|show|hide)$/,qn=/queueHooks$/;function Jr(){Pr&&(K.hidden===!1&&l.requestAnimationFrame?l.requestAnimationFrame(Jr):l.setTimeout(Jr,o.fx.interval),o.fx.tick())}function p(){return l.setTimeout(function(){Jt=void 0}),Jt=Date.now()}function S(e,r){var n,s=0,c={height:e};for(r=r?1:0;s<4;s+=2-r)n=yt[s],c["margin"+n]=c["padding"+n]=e;return r&&(c.opacity=c.width=e),c}function v(e,r,n){for(var s,c=(_.tweeners[r]||[]).concat(_.tweeners["*"]),f=0,h=c.length;f1)},removeAttr:function(e){return this.each(function(){o.removeAttr(this,e)})}}),o.extend({attr:function(e,r,n){var s,c,f=e.nodeType;if(!(f===3||f===8||f===2)){if(typeof e.getAttribute=="undefined")return o.prop(e,r,n);if((f!==1||!o.isXMLDoc(e))&&(c=o.attrHooks[r.toLowerCase()]||(o.expr.match.bool.test(r)?N:void 0)),n!==void 0){if(n===null){o.removeAttr(e,r);return}return c&&"set"in c&&(s=c.set(e,n,r))!==void 0?s:(e.setAttribute(r,n+""),n)}return c&&"get"in c&&(s=c.get(e,r))!==null?s:(s=o.find.attr(e,r),s==null?void 0:s)}},attrHooks:{type:{set:function(e,r){if(!U.radioValue&&r==="radio"&&Me(e,"input")){var n=e.value;return e.setAttribute("type",r),n&&(e.value=n),r}}}},removeAttr:function(e,r){var n,s=0,c=r&&r.match(vt);if(c&&e.nodeType===1)for(;n=c[s++];)e.removeAttribute(n)}}),N={set:function(e,r,n){return r===!1?o.removeAttr(e,n):e.setAttribute(n,n),n}},o.each(o.expr.match.bool.source.match(/\w+/g),function(e,r){var n=j[r]||o.find.attr;j[r]=function(s,c,f){var h,E,x=c.toLowerCase();return f||(E=j[x],j[x]=h,h=n(s,c,f)!=null?x:null,j[x]=E),h}});var V=/^(?:input|select|textarea|button)$/i,G=/^(?:a|area)$/i;o.fn.extend({prop:function(e,r){return _t(this,o.prop,e,r,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[o.propFix[e]||e]})}}),o.extend({prop:function(e,r,n){var s,c,f=e.nodeType;if(!(f===3||f===8||f===2))return(f!==1||!o.isXMLDoc(e))&&(r=o.propFix[r]||r,c=o.propHooks[r]),n!==void 0?c&&"set"in c&&(s=c.set(e,n,r))!==void 0?s:e[r]=n:c&&"get"in c&&(s=c.get(e,r))!==null?s:e[r]},propHooks:{tabIndex:{get:function(e){var r=o.find.attr(e,"tabindex");return r?parseInt(r,10):V.test(e.nodeName)||G.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),U.optSelected||(o.propHooks.selected={get:function(e){var r=e.parentNode;return r&&r.parentNode&&r.parentNode.selectedIndex,null},set:function(e){var r=e.parentNode;r&&(r.selectedIndex,r.parentNode&&r.parentNode.selectedIndex)}}),o.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){o.propFix[this.toLowerCase()]=this});function Y(e){var r=e.match(vt)||[];return r.join(" ")}function Z(e){return e.getAttribute&&e.getAttribute("class")||""}function ye(e){return Array.isArray(e)?e:typeof e=="string"?e.match(vt)||[]:[]}o.fn.extend({addClass:function(e){var r,n,s,c,f,h;return q(e)?this.each(function(E){o(this).addClass(e.call(this,E,Z(this)))}):(r=ye(e),r.length?this.each(function(){if(s=Z(this),n=this.nodeType===1&&" "+Y(s)+" ",n){for(f=0;f-1;)n=n.replace(" "+c+" "," ");h=Y(n),s!==h&&this.setAttribute("class",h)}}):this):this.attr("class","")},toggleClass:function(e,r){var n,s,c,f,h=typeof e,E=h==="string"||Array.isArray(e);return q(e)?this.each(function(x){o(this).toggleClass(e.call(this,x,Z(this),r),r)}):typeof r=="boolean"&&E?r?this.addClass(e):this.removeClass(e):(n=ye(e),this.each(function(){if(E)for(f=o(this),c=0;c-1)return!0;return!1}});var ke=/\r/g;o.fn.extend({val:function(e){var r,n,s,c=this[0];return arguments.length?(s=q(e),this.each(function(f){var h;this.nodeType===1&&(s?h=e.call(this,f,o(this).val()):h=e,h==null?h="":typeof h=="number"?h+="":Array.isArray(h)&&(h=o.map(h,function(E){return E==null?"":E+""})),r=o.valHooks[this.type]||o.valHooks[this.nodeName.toLowerCase()],(!r||!("set"in r)||r.set(this,h,"value")===void 0)&&(this.value=h))})):c?(r=o.valHooks[c.type]||o.valHooks[c.nodeName.toLowerCase()],r&&"get"in r&&(n=r.get(c,"value"))!==void 0?n:(n=c.value,typeof n=="string"?n.replace(ke,""):n==null?"":n)):void 0}}),o.extend({valHooks:{option:{get:function(e){var r=o.find.attr(e,"value");return r!=null?r:Y(o.text(e))}},select:{get:function(e){var r,n,s,c=e.options,f=e.selectedIndex,h=e.type==="select-one",E=h?null:[],x=h?f+1:c.length;for(f<0?s=x:s=h?f:0;s-1)&&(n=!0);return n||(e.selectedIndex=-1),f}}}}),o.each(["radio","checkbox"],function(){o.valHooks[this]={set:function(e,r){if(Array.isArray(r))return e.checked=o.inArray(o(e).val(),r)>-1}},U.checkOn||(o.valHooks[this].get=function(e){return e.getAttribute("value")===null?"on":e.value})}),U.focusin="onfocusin"in l;var Pe=/^(?:focusinfocus|focusoutblur)$/,We=function(e){e.stopPropagation()};o.extend(o.event,{trigger:function(e,r,n,s){var c,f,h,E,x,F,R,B,D=[n||K],I=W.call(e,"type")?e.type:e,ne=W.call(e,"namespace")?e.namespace.split("."):[];if(f=B=h=n=n||K,!(n.nodeType===3||n.nodeType===8)&&!Pe.test(I+o.event.triggered)&&(I.indexOf(".")>-1&&(ne=I.split("."),I=ne.shift(),ne.sort()),x=I.indexOf(":")<0&&"on"+I,e=e[o.expando]?e:new o.Event(I,typeof e=="object"&&e),e.isTrigger=s?2:3,e.namespace=ne.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+ne.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),r=r==null?[e]:o.makeArray(r,[e]),R=o.event.special[I]||{},!(!s&&R.trigger&&R.trigger.apply(n,r)===!1))){if(!s&&!R.noBubble&&!de(n)){for(E=R.delegateType||I,Pe.test(E+I)||(f=f.parentNode);f;f=f.parentNode)D.push(f),h=f;h===(n.ownerDocument||K)&&D.push(h.defaultView||h.parentWindow||l)}for(c=0;(f=D[c++])&&!e.isPropagationStopped();)B=f,e.type=c>1?E:R.bindType||I,F=(le.get(f,"events")||Object.create(null))[e.type]&&le.get(f,"handle"),F&&F.apply(f,r),F=x&&f[x],F&&F.apply&&nr(f)&&(e.result=F.apply(f,r),e.result===!1&&e.preventDefault());return e.type=I,!s&&!e.isDefaultPrevented()&&(!R._default||R._default.apply(D.pop(),r)===!1)&&nr(n)&&x&&q(n[I])&&!de(n)&&(h=n[x],h&&(n[x]=null),o.event.triggered=I,e.isPropagationStopped()&&B.addEventListener(I,We),n[I](),e.isPropagationStopped()&&B.removeEventListener(I,We),o.event.triggered=void 0,h&&(n[x]=h)),e.result}},simulate:function(e,r,n){var s=o.extend(new o.Event,n,{type:e,isSimulated:!0});o.event.trigger(s,null,r)}}),o.fn.extend({trigger:function(e,r){return this.each(function(){o.event.trigger(e,r,this)})},triggerHandler:function(e,r){var n=this[0];if(n)return o.event.trigger(e,r,n,!0)}}),U.focusin||o.each({focus:"focusin",blur:"focusout"},function(e,r){var n=function(s){o.event.simulate(r,s.target,o.event.fix(s))};o.event.special[r]={setup:function(){var s=this.ownerDocument||this.document||this,c=le.access(s,r);c||s.addEventListener(e,n,!0),le.access(s,r,(c||0)+1)},teardown:function(){var s=this.ownerDocument||this.document||this,c=le.access(s,r)-1;c?le.access(s,r,c):(s.removeEventListener(e,n,!0),le.remove(s,r))}}});var Le=l.location,it={guid:Date.now()},jt=/\?/;o.parseXML=function(e){var r,n;if(!e||typeof e!="string")return null;try{r=new l.DOMParser().parseFromString(e,"text/xml")}catch(s){}return n=r&&r.getElementsByTagName("parsererror")[0],(!r||n)&&o.error("Invalid XML: "+(n?o.map(n.childNodes,function(s){return s.textContent}).join(` +import{a as sn,b as el,c as tl}from"./chunk-SXEVG2WS.js";import{a as Ds}from"./chunk-5SHCNQ2O.js";import{a as Ls,b as Rs,c as rl}from"./chunk-Z2IKIN54.js";import{D as ca,J as fa,l as te,u as As,v as Fs}from"./chunk-HB3LWF25.js";import{D as Dt,E as oa,F as Fr,I as Cs,J as la,S as ua,U as ks,a as Ft,aa as an,b as oi,ba as Ps,ca as li,d as Et,e as sa,f as pt,g as De,j as Es,l as Zi,m as en,n as tn,o as gr,p as Ss,s as rn,v as _s,w as Ts,x as nn,y as gt,z as Ar}from"./chunk-ATS7PSQG.js";import{b as si,c as ws,e as aa}from"./chunk-5XVCUSSZ.js";var ha=ws((Is,da)=>{(function(l){if(typeof Is=="object"&&typeof da!="undefined")da.exports=l();else if(typeof define=="function"&&define.amd)define([],l);else{var t;typeof window!="undefined"?t=window:typeof global!="undefined"?t=global:typeof self!="undefined"?t=self:t=this,t.localforage=l()}})(function(){var l,t,i;return function a(u,d,m){function y(W,fe){if(!d[W]){if(!u[W]){var z=typeof si=="function"&&si;if(!fe&&z)return z(W,!0);if(b)return b(W,!0);var U=new Error("Cannot find module '"+W+"'");throw U.code="MODULE_NOT_FOUND",U}var q=d[W]={exports:{}};u[W][0].call(q.exports,function(de){var K=u[W][1][de];return y(K||de)},q,q.exports,a,u,d,m)}return d[W].exports}for(var b=typeof si=="function"&&si,L=0;L=43)}}).catch(function(){return!1})}function _e(p){return typeof Ce=="boolean"?z.resolve(Ce):oe(p).then(function(S){return Ce=S,Ce})}function He(p){var S=be[p.name],v={};v.promise=new z(function(C,k){v.resolve=C,v.reject=k}),S.deferredOperations.push(v),S.dbReady?S.dbReady=S.dbReady.then(function(){return v.promise}):S.dbReady=v.promise}function Me(p){var S=be[p.name],v=S.deferredOperations.pop();if(v)return v.resolve(),v.promise}function tt(p,S){var v=be[p.name],C=v.deferredOperations.pop();if(C)return C.reject(S),C.promise}function Qe(p,S){return new z(function(v,C){if(be[p.name]=be[p.name]||ir(),p.db)if(S)He(p),p.db.close();else return v(p.db);var k=[p.name];S&&k.push(p.version);var _=L.open.apply(L,k);S&&(_.onupgradeneeded=function(N){var j=_.result;try{j.createObjectStore(p.storeName),N.oldVersion<=1&&j.createObjectStore(xe)}catch(V){if(V.name==="ConstraintError")console.warn('The database "'+p.name+'" has been upgraded from version '+N.oldVersion+" to version "+N.newVersion+', but the storage "'+p.storeName+'" already exists.');else throw V}}),_.onerror=function(N){N.preventDefault(),C(_.error)},_.onsuccess=function(){var N=_.result;N.onversionchange=function(j){j.target.close()},v(N),Me(p)}})}function mt(p){return Qe(p,!1)}function rr(p){return Qe(p,!0)}function wr(p,S){if(!p.db)return!0;var v=!p.db.objectStoreNames.contains(p.storeName),C=p.versionp.db.version;if(C&&(p.version!==S&&console.warn('The database "'+p.name+`" can't be downgraded from version `+p.db.version+" to version "+p.version+"."),p.version=p.db.version),k||v){if(v){var _=p.db.version+1;_>p.version&&(p.version=_)}return!0}return!1}function Ir(p){return new z(function(S,v){var C=new FileReader;C.onerror=v,C.onloadend=function(k){var _=btoa(k.target.result||"");S({__local_forage_encoded_blob:!0,data:_,type:p.type})},C.readAsBinaryString(p)})}function Yt(p){var S=ae(atob(p.data));return fe([S],{type:p.type})}function Mr(p){return p&&p.__local_forage_encoded_blob}function vt(p){var S=this,v=S._initReady().then(function(){var C=be[S._dbInfo.name];if(C&&C.dbReady)return C.dbReady});return q(v,p,p),v}function An(p){He(p);for(var S=be[p.name],v=S.forages,C=0;C0&&(!p.db||_.name==="InvalidStateError"||_.name==="NotFoundError"))return z.resolve().then(function(){if(!p.db||_.name==="NotFoundError"&&!p.db.objectStoreNames.contains(p.storeName)&&p.version<=p.db.version)return p.db&&(p.version=p.db.version+1),rr(p)}).then(function(){return An(p).then(function(){Je(p,S,v,C-1)})}).catch(v);v(_)}}function ir(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function Pi(p){var S=this,v={db:null};if(p)for(var C in p)v[C]=p[C];var k=be[v.name];k||(k=ir(),be[v.name]=k),k.forages.push(S),S._initReady||(S._initReady=S.ready,S.ready=vt);var _=[];function N(){return z.resolve()}for(var j=0;j>4,Y[k++]=(N&15)<<4|j>>2,Y[k++]=(j&3)<<6|V&63;return G}function Ke(p){var S=new Uint8Array(p),v="",C;for(C=0;C>2],v+=$e[(S[C]&3)<<4|S[C+1]>>4],v+=$e[(S[C+1]&15)<<2|S[C+2]>>6],v+=$e[S[C+2]&63];return S.length%3==2?v=v.substring(0,v.length-1)+"=":S.length%3==1&&(v=v.substring(0,v.length-2)+"=="),v}function Ze(p,S){var v="";if(p&&(v=Wr.call(p)),p&&(v==="[object ArrayBuffer]"||p.buffer&&Wr.call(p.buffer)==="[object ArrayBuffer]")){var C,k=Sr;p instanceof ArrayBuffer?(C=p,k+=Tr):(C=p.buffer,v==="[object Int8Array]"?k+=yt:v==="[object Uint8Array]"?k+=At:v==="[object Uint8ClampedArray]"?k+=Nt:v==="[object Int16Array]"?k+=Fi:v==="[object Uint16Array]"?k+=Or:v==="[object Int32Array]"?k+=sr:v==="[object Uint32Array]"?k+=$r:v==="[object Float32Array]"?k+=Di:v==="[object Float64Array]"?k+=Ot:S(new Error("Failed to get type for BinaryArray"))),S(k+Ke(C))}else if(v==="[object Blob]"){var _=new FileReader;_.onload=function(){var N=In+p.type+"~"+Ke(this.result);S(Sr+Mt+N)},_.readAsArrayBuffer(p)}else try{S(JSON.stringify(p))}catch(N){console.error("Couldn't convert value into a JSON string: ",p),S(null,N)}}function Br(p){if(p.substring(0,_r)!==Sr)return JSON.parse(p);var S=p.substring(Xt),v=p.substring(_r,Xt),C;if(v===Mt&&Ai.test(S)){var k=S.match(Ai);C=k[1],S=S.substring(k[0].length)}var _=jr(S);switch(v){case Tr:return _;case Mt:return fe([_],{type:C});case yt:return new Int8Array(_);case At:return new Uint8Array(_);case Nt:return new Uint8ClampedArray(_);case Fi:return new Int16Array(_);case Or:return new Uint16Array(_);case sr:return new Int32Array(_);case $r:return new Uint32Array(_);case Di:return new Float32Array(_);case Ot:return new Float64Array(_);default:throw new Error("Unkown type: "+v)}}var Hr={serialize:Ze,deserialize:Br,stringToBuffer:jr,bufferToString:Ke};function Ur(p,S,v,C){p.executeSql("CREATE TABLE IF NOT EXISTS "+S.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],v,C)}function Li(p){var S=this,v={db:null};if(p)for(var C in p)v[C]=typeof p[C]!="string"?p[C].toString():p[C];var k=new z(function(_,N){try{v.db=openDatabase(v.name,String(v.version),v.description,v.size)}catch(j){return N(j)}v.db.transaction(function(j){Ur(j,v,function(){S._dbInfo=v,_()},function(V,G){N(G)})},N)});return v.serializer=Hr,k}function rt(p,S,v,C,k,_){p.executeSql(v,C,k,function(N,j){j.code===j.SYNTAX_ERR?N.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[S.storeName],function(V,G){G.rows.length?_(V,j):Ur(V,S,function(){V.executeSql(v,C,k,_)},_)},_):_(N,j)},_)}function Qt(p,S){var v=this;p=de(p);var C=new z(function(k,_){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function(j){rt(j,N,"SELECT * FROM "+N.storeName+" WHERE key = ? LIMIT 1",[p],function(V,G){var Y=G.rows.length?G.rows.item(0).value:null;Y&&(Y=N.serializer.deserialize(Y)),k(Y)},function(V,G){_(G)})})}).catch(_)});return U(C,S),C}function Mn(p,S){var v=this,C=new z(function(k,_){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function(j){rt(j,N,"SELECT * FROM "+N.storeName,[],function(V,G){for(var Y=G.rows,Z=Y.length,ye=0;ye0){N(Ri.apply(k,[p,V,v,C-1]));return}j(ye)}})})}).catch(j)});return U(_,v),_}function zr(p,S,v){return Ri.apply(this,[p,S,v,1])}function Cr(p,S){var v=this;p=de(p);var C=new z(function(k,_){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function(j){rt(j,N,"DELETE FROM "+N.storeName+" WHERE key = ?",[p],function(){k()},function(V,G){_(G)})})}).catch(_)});return U(C,S),C}function Nn(p){var S=this,v=new z(function(C,k){S.ready().then(function(){var _=S._dbInfo;_.db.transaction(function(N){rt(N,_,"DELETE FROM "+_.storeName,[],function(){C()},function(j,V){k(V)})})}).catch(k)});return U(v,p),v}function On(p){var S=this,v=new z(function(C,k){S.ready().then(function(){var _=S._dbInfo;_.db.transaction(function(N){rt(N,_,"SELECT COUNT(key) as c FROM "+_.storeName,[],function(j,V){var G=V.rows.item(0).c;C(G)},function(j,V){k(V)})})}).catch(k)});return U(v,p),v}function $n(p,S){var v=this,C=new z(function(k,_){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function(j){rt(j,N,"SELECT key FROM "+N.storeName+" WHERE id = ? LIMIT 1",[p+1],function(V,G){var Y=G.rows.length?G.rows.item(0).key:null;k(Y)},function(V,G){_(G)})})}).catch(_)});return U(C,S),C}function Ii(p){var S=this,v=new z(function(C,k){S.ready().then(function(){var _=S._dbInfo;_.db.transaction(function(N){rt(N,_,"SELECT key FROM "+_.storeName,[],function(j,V){for(var G=[],Y=0;Y '__WebKitDatabaseInfoTable__'",[],function(k,_){for(var N=[],j=0;j<_.rows.length;j++)N.push(_.rows.item(j).name);S({db:p,storeNames:N})},function(k,_){v(_)})},function(C){v(C)})})}function jn(p,S){S=K.apply(this,arguments);var v=this.config();p=typeof p!="function"&&p||{},p.name||(p.name=p.name||v.name,p.storeName=p.storeName||v.storeName);var C=this,k;return p.name?k=new z(function(_){var N;p.name===v.name?N=C._dbInfo.db:N=openDatabase(p.name,"","",0),p.storeName?_({db:N,storeNames:[p.storeName]}):_(Wn(N))}).then(function(_){return new z(function(N,j){_.db.transaction(function(V){function G(ke){return new z(function(Pe,We){V.executeSql("DROP TABLE IF EXISTS "+ke,[],function(){Pe()},function(Le,it){We(it)})})}for(var Y=[],Z=0,ye=_.storeNames.length;Z0}function Vr(p){var S=this,v={};if(p)for(var C in p)v[C]=p[C];return v.keyPrefix=$t(p,S._defaultConfig),qr()?(S._dbInfo=v,v.serializer=Hr,z.resolve()):z.reject()}function kr(p){var S=this,v=S.ready().then(function(){for(var C=S._dbInfo.keyPrefix,k=localStorage.length-1;k>=0;k--){var _=localStorage.key(k);_.indexOf(C)===0&&localStorage.removeItem(_)}});return U(v,p),v}function Oi(p,S){var v=this;p=de(p);var C=v.ready().then(function(){var k=v._dbInfo,_=localStorage.getItem(k.keyPrefix+p);return _&&(_=k.serializer.deserialize(_)),_});return U(C,S),C}function Hn(p,S){var v=this,C=v.ready().then(function(){for(var k=v._dbInfo,_=k.keyPrefix,N=_.length,j=localStorage.length,V=1,G=0;G=0;N--){var j=localStorage.key(N);j.indexOf(_)===0&&localStorage.removeItem(j)}}):k=z.reject("Invalid arguments"),U(k,S),k}var Hi={_driver:"localStorageWrapper",_initStorage:Vr,_support:Bn(),iterate:Hn,getItem:Oi,setItem:ji,removeItem:Wi,clear:kr,length:or,key:$i,keys:Un,dropInstance:Bi},zn=function(S,v){return S===v||typeof S=="number"&&typeof v=="number"&&isNaN(S)&&isNaN(v)},Gr=function(S,v){for(var C=S.length,k=0;k{(function(l,t){"use strict";typeof ln=="object"&&typeof ln.exports=="object"?ln.exports=l.document?t(l,!0):function(i){if(!i.document)throw new Error("jQuery requires a window with a document");return t(i)}:t(l)})(typeof window!="undefined"?window:$s,function(l,t){"use strict";var i=[],a=Object.getPrototypeOf,u=i.slice,d=i.flat?function(e){return i.flat.call(e)}:function(e){return i.concat.apply([],e)},m=i.push,y=i.indexOf,b={},L=b.toString,W=b.hasOwnProperty,fe=W.toString,z=fe.call(Object),U={},q=function(r){return typeof r=="function"&&typeof r.nodeType!="number"&&typeof r.item!="function"},de=function(r){return r!=null&&r===r.window},K=l.document,xe={type:!0,src:!0,nonce:!0,noModule:!0};function Ce(e,r,n){n=n||K;var s,c,f=n.createElement("script");if(f.text=e,r)for(s in xe)c=r[s]||r.getAttribute&&r.getAttribute(s),c&&f.setAttribute(s,c);n.head.appendChild(f).parentNode.removeChild(f)}function be(e){return e==null?e+"":typeof e=="object"||typeof e=="function"?b[L.call(e)]||"object":typeof e}var Se="3.6.3",o=function(e,r){return new o.fn.init(e,r)};o.fn=o.prototype={jquery:Se,constructor:o,length:0,toArray:function(){return u.call(this)},get:function(e){return e==null?u.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var r=o.merge(this.constructor(),e);return r.prevObject=this,r},each:function(e){return o.each(this,e)},map:function(e){return this.pushStack(o.map(this,function(r,n){return e.call(r,n,r)}))},slice:function(){return this.pushStack(u.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(o.grep(this,function(e,r){return(r+1)%2}))},odd:function(){return this.pushStack(o.grep(this,function(e,r){return r%2}))},eq:function(e){var r=this.length,n=+e+(e<0?r:0);return this.pushStack(n>=0&&n0&&r-1 in e}var ae=function(e){var r,n,s,c,f,h,E,x,F,R,B,D,I,ne,ve,re,ze,Ue,ct,Fe="sizzle"+1*new Date,me=e.document,st=0,Te=0,je=Xi(),ri=Xi(),Vi=Xi(),ft=Xi(),cr=function(g,w){return g===w&&(B=!0),0},fr={}.hasOwnProperty,ot=[],Kt=ot.pop,xt=ot.push,Zt=ot.push,ds=ot.slice,dr=function(g,w){for(var T=0,M=g.length;T+~]|"+Ae+")"+Ae+"*"),Ho=new RegExp(Ae+"|>"),Uo=new RegExp(Kn),zo=new RegExp("^"+hr+"$"),Yi={ID:new RegExp("^#("+hr+")"),CLASS:new RegExp("^\\.("+hr+")"),TAG:new RegExp("^("+hr+"|[*])"),ATTR:new RegExp("^"+hs),PSEUDO:new RegExp("^"+Kn),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+Ae+"*(even|odd|(([+-]|)(\\d*)n|)"+Ae+"*(?:([+-]|)"+Ae+"*(\\d+)|))"+Ae+"*\\)|)","i"),bool:new RegExp("^(?:"+Jn+")$","i"),needsContext:new RegExp("^"+Ae+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+Ae+"*((?:-\\d)?\\d*)"+Ae+"*\\)|)(?=[^-]|$)","i")},qo=/HTML$/i,Vo=/^(?:input|select|textarea|button)$/i,Go=/^h\d$/i,ii=/^[^{]+\{\s*\[native \w/,Yo=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,Zn=/[+~]/,Bt=new RegExp("\\\\[\\da-fA-F]{1,6}"+Ae+"?|\\\\([^\\r\\n\\f])","g"),Ht=function(g,w){var T="0x"+g.slice(1)-65536;return w||(T<0?String.fromCharCode(T+65536):String.fromCharCode(T>>10|55296,T&1023|56320))},gs=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ms=function(g,w){return w?g==="\0"?"\uFFFD":g.slice(0,-1)+"\\"+g.charCodeAt(g.length-1).toString(16)+" ":"\\"+g},vs=function(){D()},Xo=Ji(function(g){return g.disabled===!0&&g.nodeName.toLowerCase()==="fieldset"},{dir:"parentNode",next:"legend"});try{Zt.apply(ot=ds.call(me.childNodes),me.childNodes),ot[me.childNodes.length].nodeType}catch(g){Zt={apply:ot.length?function(w,T){xt.apply(w,ds.call(T))}:function(w,T){for(var M=w.length,P=0;w[M++]=T[P++];);w.length=M-1}}}function Re(g,w,T,M){var P,O,H,Q,J,ue,se,he=w&&w.ownerDocument,we=w?w.nodeType:9;if(T=T||[],typeof g!="string"||!g||we!==1&&we!==9&&we!==11)return T;if(!M&&(D(w),w=w||I,ve)){if(we!==11&&(J=Yo.exec(g)))if(P=J[1]){if(we===9)if(H=w.getElementById(P)){if(H.id===P)return T.push(H),T}else return T;else if(he&&(H=he.getElementById(P))&&ct(w,H)&&H.id===P)return T.push(H),T}else{if(J[2])return Zt.apply(T,w.getElementsByTagName(g)),T;if((P=J[3])&&n.getElementsByClassName&&w.getElementsByClassName)return Zt.apply(T,w.getElementsByClassName(P)),T}if(n.qsa&&!ft[g+" "]&&(!re||!re.test(g))&&(we!==1||w.nodeName.toLowerCase()!=="object")){if(se=g,he=w,we===1&&(Ho.test(g)||ps.test(g))){for(he=Zn.test(g)&&ta(w.parentNode)||w,(he!==w||!n.scope)&&((Q=w.getAttribute("id"))?Q=Q.replace(gs,ms):w.setAttribute("id",Q=Fe)),ue=h(g),O=ue.length;O--;)ue[O]=(Q?"#"+Q:":scope")+" "+Qi(ue[O]);se=ue.join(",")}try{if(n.cssSupportsSelector&&!CSS.supports("selector(:is("+se+"))"))throw new Error;return Zt.apply(T,he.querySelectorAll(se)),T}catch(Ie){ft(g,!0)}finally{Q===Fe&&w.removeAttribute("id")}}}return x(g.replace(Gi,"$1"),w,T,M)}function Xi(){var g=[];function w(T,M){return g.push(T+" ")>s.cacheLength&&delete w[g.shift()],w[T+" "]=M}return w}function Tt(g){return g[Fe]=!0,g}function wt(g){var w=I.createElement("fieldset");try{return!!g(w)}catch(T){return!1}finally{w.parentNode&&w.parentNode.removeChild(w),w=null}}function ea(g,w){for(var T=g.split("|"),M=T.length;M--;)s.attrHandle[T[M]]=w}function bs(g,w){var T=w&&g,M=T&&g.nodeType===1&&w.nodeType===1&&g.sourceIndex-w.sourceIndex;if(M)return M;if(T){for(;T=T.nextSibling;)if(T===w)return-1}return g?1:-1}function Qo(g){return function(w){var T=w.nodeName.toLowerCase();return T==="input"&&w.type===g}}function Jo(g){return function(w){var T=w.nodeName.toLowerCase();return(T==="input"||T==="button")&&w.type===g}}function ys(g){return function(w){return"form"in w?w.parentNode&&w.disabled===!1?"label"in w?"label"in w.parentNode?w.parentNode.disabled===g:w.disabled===g:w.isDisabled===g||w.isDisabled!==!g&&Xo(w)===g:w.disabled===g:"label"in w?w.disabled===g:!1}}function pr(g){return Tt(function(w){return w=+w,Tt(function(T,M){for(var P,O=g([],T.length,w),H=O.length;H--;)T[P=O[H]]&&(T[P]=!(M[P]=T[P]))})})}function ta(g){return g&&typeof g.getElementsByTagName!="undefined"&&g}n=Re.support={},f=Re.isXML=function(g){var w=g&&g.namespaceURI,T=g&&(g.ownerDocument||g).documentElement;return!qo.test(w||T&&T.nodeName||"HTML")},D=Re.setDocument=function(g){var w,T,M=g?g.ownerDocument||g:me;return M==I||M.nodeType!==9||!M.documentElement||(I=M,ne=I.documentElement,ve=!f(I),me!=I&&(T=I.defaultView)&&T.top!==T&&(T.addEventListener?T.addEventListener("unload",vs,!1):T.attachEvent&&T.attachEvent("onunload",vs)),n.scope=wt(function(P){return ne.appendChild(P).appendChild(I.createElement("div")),typeof P.querySelectorAll!="undefined"&&!P.querySelectorAll(":scope fieldset div").length}),n.cssSupportsSelector=wt(function(){return CSS.supports("selector(*)")&&I.querySelectorAll(":is(:jqfake)")&&!CSS.supports("selector(:is(*,:jqfake))")}),n.attributes=wt(function(P){return P.className="i",!P.getAttribute("className")}),n.getElementsByTagName=wt(function(P){return P.appendChild(I.createComment("")),!P.getElementsByTagName("*").length}),n.getElementsByClassName=ii.test(I.getElementsByClassName),n.getById=wt(function(P){return ne.appendChild(P).id=Fe,!I.getElementsByName||!I.getElementsByName(Fe).length}),n.getById?(s.filter.ID=function(P){var O=P.replace(Bt,Ht);return function(H){return H.getAttribute("id")===O}},s.find.ID=function(P,O){if(typeof O.getElementById!="undefined"&&ve){var H=O.getElementById(P);return H?[H]:[]}}):(s.filter.ID=function(P){var O=P.replace(Bt,Ht);return function(H){var Q=typeof H.getAttributeNode!="undefined"&&H.getAttributeNode("id");return Q&&Q.value===O}},s.find.ID=function(P,O){if(typeof O.getElementById!="undefined"&&ve){var H,Q,J,ue=O.getElementById(P);if(ue){if(H=ue.getAttributeNode("id"),H&&H.value===P)return[ue];for(J=O.getElementsByName(P),Q=0;ue=J[Q++];)if(H=ue.getAttributeNode("id"),H&&H.value===P)return[ue]}return[]}}),s.find.TAG=n.getElementsByTagName?function(P,O){if(typeof O.getElementsByTagName!="undefined")return O.getElementsByTagName(P);if(n.qsa)return O.querySelectorAll(P)}:function(P,O){var H,Q=[],J=0,ue=O.getElementsByTagName(P);if(P==="*"){for(;H=ue[J++];)H.nodeType===1&&Q.push(H);return Q}return ue},s.find.CLASS=n.getElementsByClassName&&function(P,O){if(typeof O.getElementsByClassName!="undefined"&&ve)return O.getElementsByClassName(P)},ze=[],re=[],(n.qsa=ii.test(I.querySelectorAll))&&(wt(function(P){var O;ne.appendChild(P).innerHTML="",P.querySelectorAll("[msallowcapture^='']").length&&re.push("[*^$]="+Ae+`*(?:''|"")`),P.querySelectorAll("[selected]").length||re.push("\\["+Ae+"*(?:value|"+Jn+")"),P.querySelectorAll("[id~="+Fe+"-]").length||re.push("~="),O=I.createElement("input"),O.setAttribute("name",""),P.appendChild(O),P.querySelectorAll("[name='']").length||re.push("\\["+Ae+"*name"+Ae+"*="+Ae+`*(?:''|"")`),P.querySelectorAll(":checked").length||re.push(":checked"),P.querySelectorAll("a#"+Fe+"+*").length||re.push(".#.+[+~]"),P.querySelectorAll("\\\f"),re.push("[\\r\\n\\f]")}),wt(function(P){P.innerHTML="";var O=I.createElement("input");O.setAttribute("type","hidden"),P.appendChild(O).setAttribute("name","D"),P.querySelectorAll("[name=d]").length&&re.push("name"+Ae+"*[*^$|!~]?="),P.querySelectorAll(":enabled").length!==2&&re.push(":enabled",":disabled"),ne.appendChild(P).disabled=!0,P.querySelectorAll(":disabled").length!==2&&re.push(":enabled",":disabled"),P.querySelectorAll("*,:x"),re.push(",.*:")})),(n.matchesSelector=ii.test(Ue=ne.matches||ne.webkitMatchesSelector||ne.mozMatchesSelector||ne.oMatchesSelector||ne.msMatchesSelector))&&wt(function(P){n.disconnectedMatch=Ue.call(P,"*"),Ue.call(P,"[s!='']:x"),ze.push("!=",Kn)}),n.cssSupportsSelector||re.push(":has"),re=re.length&&new RegExp(re.join("|")),ze=ze.length&&new RegExp(ze.join("|")),w=ii.test(ne.compareDocumentPosition),ct=w||ii.test(ne.contains)?function(P,O){var H=P.nodeType===9&&P.documentElement||P,Q=O&&O.parentNode;return P===Q||!!(Q&&Q.nodeType===1&&(H.contains?H.contains(Q):P.compareDocumentPosition&&P.compareDocumentPosition(Q)&16))}:function(P,O){if(O){for(;O=O.parentNode;)if(O===P)return!0}return!1},cr=w?function(P,O){if(P===O)return B=!0,0;var H=!P.compareDocumentPosition-!O.compareDocumentPosition;return H||(H=(P.ownerDocument||P)==(O.ownerDocument||O)?P.compareDocumentPosition(O):1,H&1||!n.sortDetached&&O.compareDocumentPosition(P)===H?P==I||P.ownerDocument==me&&ct(me,P)?-1:O==I||O.ownerDocument==me&&ct(me,O)?1:R?dr(R,P)-dr(R,O):0:H&4?-1:1)}:function(P,O){if(P===O)return B=!0,0;var H,Q=0,J=P.parentNode,ue=O.parentNode,se=[P],he=[O];if(!J||!ue)return P==I?-1:O==I?1:J?-1:ue?1:R?dr(R,P)-dr(R,O):0;if(J===ue)return bs(P,O);for(H=P;H=H.parentNode;)se.unshift(H);for(H=O;H=H.parentNode;)he.unshift(H);for(;se[Q]===he[Q];)Q++;return Q?bs(se[Q],he[Q]):se[Q]==me?-1:he[Q]==me?1:0}),I},Re.matches=function(g,w){return Re(g,null,null,w)},Re.matchesSelector=function(g,w){if(D(g),n.matchesSelector&&ve&&!ft[w+" "]&&(!ze||!ze.test(w))&&(!re||!re.test(w)))try{var T=Ue.call(g,w);if(T||n.disconnectedMatch||g.document&&g.document.nodeType!==11)return T}catch(M){ft(w,!0)}return Re(w,I,null,[g]).length>0},Re.contains=function(g,w){return(g.ownerDocument||g)!=I&&D(g),ct(g,w)},Re.attr=function(g,w){(g.ownerDocument||g)!=I&&D(g);var T=s.attrHandle[w.toLowerCase()],M=T&&fr.call(s.attrHandle,w.toLowerCase())?T(g,w,!ve):void 0;return M!==void 0?M:n.attributes||!ve?g.getAttribute(w):(M=g.getAttributeNode(w))&&M.specified?M.value:null},Re.escape=function(g){return(g+"").replace(gs,ms)},Re.error=function(g){throw new Error("Syntax error, unrecognized expression: "+g)},Re.uniqueSort=function(g){var w,T=[],M=0,P=0;if(B=!n.detectDuplicates,R=!n.sortStable&&g.slice(0),g.sort(cr),B){for(;w=g[P++];)w===g[P]&&(M=T.push(P));for(;M--;)g.splice(T[M],1)}return R=null,g},c=Re.getText=function(g){var w,T="",M=0,P=g.nodeType;if(P){if(P===1||P===9||P===11){if(typeof g.textContent=="string")return g.textContent;for(g=g.firstChild;g;g=g.nextSibling)T+=c(g)}else if(P===3||P===4)return g.nodeValue}else for(;w=g[M++];)T+=c(w);return T},s=Re.selectors={cacheLength:50,createPseudo:Tt,match:Yi,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(g){return g[1]=g[1].replace(Bt,Ht),g[3]=(g[3]||g[4]||g[5]||"").replace(Bt,Ht),g[2]==="~="&&(g[3]=" "+g[3]+" "),g.slice(0,4)},CHILD:function(g){return g[1]=g[1].toLowerCase(),g[1].slice(0,3)==="nth"?(g[3]||Re.error(g[0]),g[4]=+(g[4]?g[5]+(g[6]||1):2*(g[3]==="even"||g[3]==="odd")),g[5]=+(g[7]+g[8]||g[3]==="odd")):g[3]&&Re.error(g[0]),g},PSEUDO:function(g){var w,T=!g[6]&&g[2];return Yi.CHILD.test(g[0])?null:(g[3]?g[2]=g[4]||g[5]||"":T&&Uo.test(T)&&(w=h(T,!0))&&(w=T.indexOf(")",T.length-w)-T.length)&&(g[0]=g[0].slice(0,w),g[2]=T.slice(0,w)),g.slice(0,3))}},filter:{TAG:function(g){var w=g.replace(Bt,Ht).toLowerCase();return g==="*"?function(){return!0}:function(T){return T.nodeName&&T.nodeName.toLowerCase()===w}},CLASS:function(g){var w=je[g+" "];return w||(w=new RegExp("(^|"+Ae+")"+g+"("+Ae+"|$)"))&&je(g,function(T){return w.test(typeof T.className=="string"&&T.className||typeof T.getAttribute!="undefined"&&T.getAttribute("class")||"")})},ATTR:function(g,w,T){return function(M){var P=Re.attr(M,g);return P==null?w==="!=":w?(P+="",w==="="?P===T:w==="!="?P!==T:w==="^="?T&&P.indexOf(T)===0:w==="*="?T&&P.indexOf(T)>-1:w==="$="?T&&P.slice(-T.length)===T:w==="~="?(" "+P.replace(jo," ")+" ").indexOf(T)>-1:w==="|="?P===T||P.slice(0,T.length+1)===T+"-":!1):!0}},CHILD:function(g,w,T,M,P){var O=g.slice(0,3)!=="nth",H=g.slice(-4)!=="last",Q=w==="of-type";return M===1&&P===0?function(J){return!!J.parentNode}:function(J,ue,se){var he,we,Ie,ce,qe,et,dt=O!==H?"nextSibling":"previousSibling",Ne=J.parentNode,ni=Q&&J.nodeName.toLowerCase(),ai=!se&&!Q,ht=!1;if(Ne){if(O){for(;dt;){for(ce=J;ce=ce[dt];)if(Q?ce.nodeName.toLowerCase()===ni:ce.nodeType===1)return!1;et=dt=g==="only"&&!et&&"nextSibling"}return!0}if(et=[H?Ne.firstChild:Ne.lastChild],H&&ai){for(ce=Ne,Ie=ce[Fe]||(ce[Fe]={}),we=Ie[ce.uniqueID]||(Ie[ce.uniqueID]={}),he=we[g]||[],qe=he[0]===st&&he[1],ht=qe&&he[2],ce=qe&&Ne.childNodes[qe];ce=++qe&&ce&&ce[dt]||(ht=qe=0)||et.pop();)if(ce.nodeType===1&&++ht&&ce===J){we[g]=[st,qe,ht];break}}else if(ai&&(ce=J,Ie=ce[Fe]||(ce[Fe]={}),we=Ie[ce.uniqueID]||(Ie[ce.uniqueID]={}),he=we[g]||[],qe=he[0]===st&&he[1],ht=qe),ht===!1)for(;(ce=++qe&&ce&&ce[dt]||(ht=qe=0)||et.pop())&&!((Q?ce.nodeName.toLowerCase()===ni:ce.nodeType===1)&&++ht&&(ai&&(Ie=ce[Fe]||(ce[Fe]={}),we=Ie[ce.uniqueID]||(Ie[ce.uniqueID]={}),we[g]=[st,ht]),ce===J)););return ht-=P,ht===M||ht%M==0&&ht/M>=0}}},PSEUDO:function(g,w){var T,M=s.pseudos[g]||s.setFilters[g.toLowerCase()]||Re.error("unsupported pseudo: "+g);return M[Fe]?M(w):M.length>1?(T=[g,g,"",w],s.setFilters.hasOwnProperty(g.toLowerCase())?Tt(function(P,O){for(var H,Q=M(P,w),J=Q.length;J--;)H=dr(P,Q[J]),P[H]=!(O[H]=Q[J])}):function(P){return M(P,0,T)}):M}},pseudos:{not:Tt(function(g){var w=[],T=[],M=E(g.replace(Gi,"$1"));return M[Fe]?Tt(function(P,O,H,Q){for(var J,ue=M(P,null,Q,[]),se=P.length;se--;)(J=ue[se])&&(P[se]=!(O[se]=J))}):function(P,O,H){return w[0]=P,M(w,null,H,T),w[0]=null,!T.pop()}}),has:Tt(function(g){return function(w){return Re(g,w).length>0}}),contains:Tt(function(g){return g=g.replace(Bt,Ht),function(w){return(w.textContent||c(w)).indexOf(g)>-1}}),lang:Tt(function(g){return zo.test(g||"")||Re.error("unsupported lang: "+g),g=g.replace(Bt,Ht).toLowerCase(),function(w){var T;do if(T=ve?w.lang:w.getAttribute("xml:lang")||w.getAttribute("lang"))return T=T.toLowerCase(),T===g||T.indexOf(g+"-")===0;while((w=w.parentNode)&&w.nodeType===1);return!1}}),target:function(g){var w=e.location&&e.location.hash;return w&&w.slice(1)===g.id},root:function(g){return g===ne},focus:function(g){return g===I.activeElement&&(!I.hasFocus||I.hasFocus())&&!!(g.type||g.href||~g.tabIndex)},enabled:ys(!1),disabled:ys(!0),checked:function(g){var w=g.nodeName.toLowerCase();return w==="input"&&!!g.checked||w==="option"&&!!g.selected},selected:function(g){return g.parentNode&&g.parentNode.selectedIndex,g.selected===!0},empty:function(g){for(g=g.firstChild;g;g=g.nextSibling)if(g.nodeType<6)return!1;return!0},parent:function(g){return!s.pseudos.empty(g)},header:function(g){return Go.test(g.nodeName)},input:function(g){return Vo.test(g.nodeName)},button:function(g){var w=g.nodeName.toLowerCase();return w==="input"&&g.type==="button"||w==="button"},text:function(g){var w;return g.nodeName.toLowerCase()==="input"&&g.type==="text"&&((w=g.getAttribute("type"))==null||w.toLowerCase()==="text")},first:pr(function(){return[0]}),last:pr(function(g,w){return[w-1]}),eq:pr(function(g,w,T){return[T<0?T+w:T]}),even:pr(function(g,w){for(var T=0;Tw?w:T;--M>=0;)g.push(M);return g}),gt:pr(function(g,w,T){for(var M=T<0?T+w:T;++M1?function(w,T,M){for(var P=g.length;P--;)if(!g[P](w,T,M))return!1;return!0}:g[0]}function Ko(g,w,T){for(var M=0,P=w.length;M-1&&(H[se]=!(Q[se]=we))}}else Ne=Ki(Ne===Q?Ne.splice(qe,Ne.length):Ne),P?P(null,Q,Ne,ue):Zt.apply(Q,Ne)})}function na(g){for(var w,T,M,P=g.length,O=s.relative[g[0].type],H=O||s.relative[" "],Q=O?1:0,J=Ji(function(he){return he===w},H,!0),ue=Ji(function(he){return dr(w,he)>-1},H,!0),se=[function(he,we,Ie){var ce=!O&&(Ie||we!==F)||((w=we).nodeType?J(he,we,Ie):ue(he,we,Ie));return w=null,ce}];Q1&&ra(se),Q>1&&Qi(g.slice(0,Q-1).concat({value:g[Q-2].type===" "?"*":""})).replace(Gi,"$1"),T,Q0,M=g.length>0,P=function(O,H,Q,J,ue){var se,he,we,Ie=0,ce="0",qe=O&&[],et=[],dt=F,Ne=O||M&&s.find.TAG("*",ue),ni=st+=dt==null?1:Math.random()||.1,ai=Ne.length;for(ue&&(F=H==I||H||ue);ce!==ai&&(se=Ne[ce])!=null;ce++){if(M&&se){for(he=0,!H&&se.ownerDocument!=I&&(D(se),Q=!ve);we=g[he++];)if(we(se,H||I,Q)){J.push(se);break}ue&&(st=ni)}T&&((se=!we&&se)&&Ie--,O&&qe.push(se))}if(Ie+=ce,T&&ce!==Ie){for(he=0;we=w[he++];)we(qe,et,H,Q);if(O){if(Ie>0)for(;ce--;)qe[ce]||et[ce]||(et[ce]=Kt.call(J));et=Ki(et)}Zt.apply(J,et),ue&&!O&&et.length>0&&Ie+w.length>1&&Re.uniqueSort(J)}return ue&&(st=ni,F=dt),qe};return T?Tt(P):P}return E=Re.compile=function(g,w){var T,M=[],P=[],O=Vi[g+" "];if(!O){for(w||(w=h(g)),T=w.length;T--;)O=na(w[T]),O[Fe]?M.push(O):P.push(O);O=Vi(g,Zo(P,M)),O.selector=g}return O},x=Re.select=function(g,w,T,M){var P,O,H,Q,J,ue=typeof g=="function"&&g,se=!M&&h(g=ue.selector||g);if(T=T||[],se.length===1){if(O=se[0]=se[0].slice(0),O.length>2&&(H=O[0]).type==="ID"&&w.nodeType===9&&ve&&s.relative[O[1].type]){if(w=(s.find.ID(H.matches[0].replace(Bt,Ht),w)||[])[0],w)ue&&(w=w.parentNode);else return T;g=g.slice(O.shift().value.length)}for(P=Yi.needsContext.test(g)?0:O.length;P--&&(H=O[P],!s.relative[Q=H.type]);)if((J=s.find[Q])&&(M=J(H.matches[0].replace(Bt,Ht),Zn.test(O[0].type)&&ta(w.parentNode)||w))){if(O.splice(P,1),g=M.length&&Qi(O),!g)return Zt.apply(T,M),T;break}}return(ue||E(g,se))(M,w,!ve,T,!w||Zn.test(g)&&ta(w.parentNode)||w),T},n.sortStable=Fe.split("").sort(cr).join("")===Fe,n.detectDuplicates=!!B,D(),n.sortDetached=wt(function(g){return g.compareDocumentPosition(I.createElement("fieldset"))&1}),wt(function(g){return g.innerHTML="",g.firstChild.getAttribute("href")==="#"})||ea("type|href|height|width",function(g,w,T){if(!T)return g.getAttribute(w,w.toLowerCase()==="type"?1:2)}),(!n.attributes||!wt(function(g){return g.innerHTML="",g.firstChild.setAttribute("value",""),g.firstChild.getAttribute("value")===""}))&&ea("value",function(g,w,T){if(!T&&g.nodeName.toLowerCase()==="input")return g.defaultValue}),wt(function(g){return g.getAttribute("disabled")==null})||ea(Jn,function(g,w,T){var M;if(!T)return g[w]===!0?w.toLowerCase():(M=g.getAttributeNode(w))&&M.specified?M.value:null}),Re}(l);o.find=ae,o.expr=ae.selectors,o.expr[":"]=o.expr.pseudos,o.uniqueSort=o.unique=ae.uniqueSort,o.text=ae.getText,o.isXMLDoc=ae.isXML,o.contains=ae.contains,o.escapeSelector=ae.escape;var oe=function(e,r,n){for(var s=[],c=n!==void 0;(e=e[r])&&e.nodeType!==9;)if(e.nodeType===1){if(c&&o(e).is(n))break;s.push(e)}return s},_e=function(e,r){for(var n=[];e;e=e.nextSibling)e.nodeType===1&&e!==r&&n.push(e);return n},He=o.expr.match.needsContext;function Me(e,r){return e.nodeName&&e.nodeName.toLowerCase()===r.toLowerCase()}var tt=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function Qe(e,r,n){return q(r)?o.grep(e,function(s,c){return!!r.call(s,c,s)!==n}):r.nodeType?o.grep(e,function(s){return s===r!==n}):typeof r!="string"?o.grep(e,function(s){return y.call(r,s)>-1!==n}):o.filter(r,e,n)}o.filter=function(e,r,n){var s=r[0];return n&&(e=":not("+e+")"),r.length===1&&s.nodeType===1?o.find.matchesSelector(s,e)?[s]:[]:o.find.matches(e,o.grep(r,function(c){return c.nodeType===1}))},o.fn.extend({find:function(e){var r,n,s=this.length,c=this;if(typeof e!="string")return this.pushStack(o(e).filter(function(){for(r=0;r1?o.uniqueSort(n):n},filter:function(e){return this.pushStack(Qe(this,e||[],!1))},not:function(e){return this.pushStack(Qe(this,e||[],!0))},is:function(e){return!!Qe(this,typeof e=="string"&&He.test(e)?o(e):e||[],!1).length}});var mt,rr=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,wr=o.fn.init=function(e,r,n){var s,c;if(!e)return this;if(n=n||mt,typeof e=="string")if(e[0]==="<"&&e[e.length-1]===">"&&e.length>=3?s=[null,e,null]:s=rr.exec(e),s&&(s[1]||!r))if(s[1]){if(r=r instanceof o?r[0]:r,o.merge(this,o.parseHTML(s[1],r&&r.nodeType?r.ownerDocument||r:K,!0)),tt.test(s[1])&&o.isPlainObject(r))for(s in r)q(this[s])?this[s](r[s]):this.attr(s,r[s]);return this}else return c=K.getElementById(s[2]),c&&(this[0]=c,this.length=1),this;else return!r||r.jquery?(r||n).find(e):this.constructor(r).find(e);else{if(e.nodeType)return this[0]=e,this.length=1,this;if(q(e))return n.ready!==void 0?n.ready(e):e(o)}return o.makeArray(e,this)};wr.prototype=o.fn,mt=o(K);var Ir=/^(?:parents|prev(?:Until|All))/,Yt={children:!0,contents:!0,next:!0,prev:!0};o.fn.extend({has:function(e){var r=o(e,this),n=r.length;return this.filter(function(){for(var s=0;s-1:n.nodeType===1&&o.find.matchesSelector(n,e))){f.push(n);break}}return this.pushStack(f.length>1?o.uniqueSort(f):f)},index:function(e){return e?typeof e=="string"?y.call(o(e),this[0]):y.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,r){return this.pushStack(o.uniqueSort(o.merge(this.get(),o(e,r))))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}});function Mr(e,r){for(;(e=e[r])&&e.nodeType!==1;);return e}o.each({parent:function(e){var r=e.parentNode;return r&&r.nodeType!==11?r:null},parents:function(e){return oe(e,"parentNode")},parentsUntil:function(e,r,n){return oe(e,"parentNode",n)},next:function(e){return Mr(e,"nextSibling")},prev:function(e){return Mr(e,"previousSibling")},nextAll:function(e){return oe(e,"nextSibling")},prevAll:function(e){return oe(e,"previousSibling")},nextUntil:function(e,r,n){return oe(e,"nextSibling",n)},prevUntil:function(e,r,n){return oe(e,"previousSibling",n)},siblings:function(e){return _e((e.parentNode||{}).firstChild,e)},children:function(e){return _e(e.firstChild)},contents:function(e){return e.contentDocument!=null&&a(e.contentDocument)?e.contentDocument:(Me(e,"template")&&(e=e.content||e),o.merge([],e.childNodes))}},function(e,r){o.fn[e]=function(n,s){var c=o.map(this,r,n);return e.slice(-5)!=="Until"&&(s=n),s&&typeof s=="string"&&(c=o.filter(s,c)),this.length>1&&(Yt[e]||o.uniqueSort(c),Ir.test(e)&&c.reverse()),this.pushStack(c)}});var vt=/[^\x20\t\r\n\f]+/g;function An(e){var r={};return o.each(e.match(vt)||[],function(n,s){r[s]=!0}),r}o.Callbacks=function(e){e=typeof e=="string"?An(e):o.extend({},e);var r,n,s,c,f=[],h=[],E=-1,x=function(){for(c=c||e.once,s=r=!0;h.length;E=-1)for(n=h.shift();++E-1;)f.splice(D,1),D<=E&&E--}),this},has:function(R){return R?o.inArray(R,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return c=h=[],f=n="",this},disabled:function(){return!f},lock:function(){return c=h=[],!n&&!r&&(f=n=""),this},locked:function(){return!!c},fireWith:function(R,B){return c||(B=B||[],B=[R,B.slice?B.slice():B],h.push(B),r||x()),this},fire:function(){return F.fireWith(this,arguments),this},fired:function(){return!!s}};return F};function Je(e){return e}function ir(e){throw e}function Pi(e,r,n,s){var c;try{e&&q(c=e.promise)?c.call(e).done(r).fail(n):e&&q(c=e.then)?c.call(e,r,n):r.apply(void 0,[e].slice(s))}catch(f){n.apply(void 0,[f])}}o.extend({Deferred:function(e){var r=[["notify","progress",o.Callbacks("memory"),o.Callbacks("memory"),2],["resolve","done",o.Callbacks("once memory"),o.Callbacks("once memory"),0,"resolved"],["reject","fail",o.Callbacks("once memory"),o.Callbacks("once memory"),1,"rejected"]],n="pending",s={state:function(){return n},always:function(){return c.done(arguments).fail(arguments),this},catch:function(f){return s.then(null,f)},pipe:function(){var f=arguments;return o.Deferred(function(h){o.each(r,function(E,x){var F=q(f[x[4]])&&f[x[4]];c[x[1]](function(){var R=F&&F.apply(this,arguments);R&&q(R.promise)?R.promise().progress(h.notify).done(h.resolve).fail(h.reject):h[x[0]+"With"](this,F?[R]:arguments)})}),f=null}).promise()},then:function(f,h,E){var x=0;function F(R,B,D,I){return function(){var ne=this,ve=arguments,re=function(){var Ue,ct;if(!(R=x&&(D!==ir&&(ne=void 0,ve=[Ue]),B.rejectWith(ne,ve))}};R?ze():(o.Deferred.getStackHook&&(ze.stackTrace=o.Deferred.getStackHook()),l.setTimeout(ze))}}return o.Deferred(function(R){r[0][3].add(F(0,R,q(E)?E:Je,R.notifyWith)),r[1][3].add(F(0,R,q(f)?f:Je)),r[2][3].add(F(0,R,q(h)?h:ir))}).promise()},promise:function(f){return f!=null?o.extend(f,s):s}},c={};return o.each(r,function(f,h){var E=h[2],x=h[5];s[h[1]]=E.add,x&&E.add(function(){n=x},r[3-f][2].disable,r[3-f][3].disable,r[0][2].lock,r[0][3].lock),E.add(h[3].fire),c[h[0]]=function(){return c[h[0]+"With"](this===c?void 0:this,arguments),this},c[h[0]+"With"]=E.fireWith}),s.promise(c),e&&e.call(c,c),c},when:function(e){var r=arguments.length,n=r,s=Array(n),c=u.call(arguments),f=o.Deferred(),h=function(E){return function(x){s[E]=this,c[E]=arguments.length>1?u.call(arguments):x,--r||f.resolveWith(s,c)}};if(r<=1&&(Pi(e,f.done(h(n)).resolve,f.reject,!r),f.state()==="pending"||q(c[n]&&c[n].then)))return f.then();for(;n--;)Pi(c[n],h(n),f.reject);return f.promise()}});var Fn=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;o.Deferred.exceptionHook=function(e,r){l.console&&l.console.warn&&e&&Fn.test(e.name)&&l.console.warn("jQuery.Deferred exception: "+e.message,e.stack,r)},o.readyException=function(e){l.setTimeout(function(){throw e})};var Nr=o.Deferred();o.fn.ready=function(e){return Nr.then(e).catch(function(r){o.readyException(r)}),this},o.extend({isReady:!1,readyWait:1,ready:function(e){(e===!0?--o.readyWait:o.isReady)||(o.isReady=!0,!(e!==!0&&--o.readyWait>0)&&Nr.resolveWith(K,[o]))}}),o.ready.then=Nr.then;function Er(){K.removeEventListener("DOMContentLoaded",Er),l.removeEventListener("load",Er),o.ready()}K.readyState==="complete"||K.readyState!=="loading"&&!K.documentElement.doScroll?l.setTimeout(o.ready):(K.addEventListener("DOMContentLoaded",Er),l.addEventListener("load",Er));var _t=function(e,r,n,s,c,f,h){var E=0,x=e.length,F=n==null;if(be(n)==="object"){c=!0;for(E in n)_t(e,r,E,n[E],!0,f,h)}else if(s!==void 0&&(c=!0,q(s)||(h=!0),F&&(h?(r.call(e,s),r=null):(F=r,r=function(R,B,D){return F.call(o(R),D)})),r))for(;E1,null,!0)},removeData:function(e){return this.each(function(){$e.remove(this,e)})}}),o.extend({queue:function(e,r,n){var s;if(e)return r=(r||"fx")+"queue",s=le.get(e,r),n&&(!s||Array.isArray(n)?s=le.access(e,r,o.makeArray(n)):s.push(n)),s||[]},dequeue:function(e,r){r=r||"fx";var n=o.queue(e,r),s=n.length,c=n.shift(),f=o._queueHooks(e,r),h=function(){o.dequeue(e,r)};c==="inprogress"&&(c=n.shift(),s--),c&&(r==="fx"&&n.unshift("inprogress"),delete f.stop,c.call(e,h,f)),!s&&f&&f.empty.fire()},_queueHooks:function(e,r){var n=r+"queueHooks";return le.get(e,n)||le.access(e,n,{empty:o.Callbacks("once memory").add(function(){le.remove(e,[r+"queue",n])})})}}),o.fn.extend({queue:function(e,r){var n=2;return typeof e!="string"&&(r=e,e="fx",n--),arguments.length\x20\t\r\n\f]*)/i,jr=/^$|^module$|\/(?:java|ecma)script/i;(function(){var e=K.createDocumentFragment(),r=e.appendChild(K.createElement("div")),n=K.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),r.appendChild(n),U.checkClone=r.cloneNode(!0).cloneNode(!0).lastChild.checked,r.innerHTML="",U.noCloneChecked=!!r.cloneNode(!0).lastChild.defaultValue,r.innerHTML="",U.option=!!r.lastChild})();var Ke={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};Ke.tbody=Ke.tfoot=Ke.colgroup=Ke.caption=Ke.thead,Ke.th=Ke.td,U.option||(Ke.optgroup=Ke.option=[1,""]);function Ze(e,r){var n;return typeof e.getElementsByTagName!="undefined"?n=e.getElementsByTagName(r||"*"):typeof e.querySelectorAll!="undefined"?n=e.querySelectorAll(r||"*"):n=[],r===void 0||r&&Me(e,r)?o.merge([e],n):n}function Br(e,r){for(var n=0,s=e.length;n-1){c&&c.push(f);continue}if(F=Nt(f),h=Ze(B.appendChild(f),"script"),F&&Br(h),n)for(R=0;f=h[R++];)jr.test(f.type||"")&&n.push(f)}return B}var Li=/^([^.]*)(?:\.(.+)|)/;function rt(){return!0}function Qt(){return!1}function Mn(e,r){return e===Ri()==(r==="focus")}function Ri(){try{return K.activeElement}catch(e){}}function zr(e,r,n,s,c,f){var h,E;if(typeof r=="object"){typeof n!="string"&&(s=s||n,n=void 0);for(E in r)zr(e,E,n,s,r[E],f);return e}if(s==null&&c==null?(c=n,s=n=void 0):c==null&&(typeof n=="string"?(c=s,s=void 0):(c=s,s=n,n=void 0)),c===!1)c=Qt;else if(!c)return e;return f===1&&(h=c,c=function(x){return o().off(x),h.apply(this,arguments)},c.guid=h.guid||(h.guid=o.guid++)),e.each(function(){o.event.add(this,r,c,s,n)})}o.event={global:{},add:function(e,r,n,s,c){var f,h,E,x,F,R,B,D,I,ne,ve,re=le.get(e);if(!!nr(e))for(n.handler&&(f=n,n=f.handler,c=f.selector),c&&o.find.matchesSelector(At,c),n.guid||(n.guid=o.guid++),(x=re.events)||(x=re.events=Object.create(null)),(h=re.handle)||(h=re.handle=function(ze){return typeof o!="undefined"&&o.event.triggered!==ze.type?o.event.dispatch.apply(e,arguments):void 0}),r=(r||"").match(vt)||[""],F=r.length;F--;)E=Li.exec(r[F])||[],I=ve=E[1],ne=(E[2]||"").split(".").sort(),!!I&&(B=o.event.special[I]||{},I=(c?B.delegateType:B.bindType)||I,B=o.event.special[I]||{},R=o.extend({type:I,origType:ve,data:s,handler:n,guid:n.guid,selector:c,needsContext:c&&o.expr.match.needsContext.test(c),namespace:ne.join(".")},f),(D=x[I])||(D=x[I]=[],D.delegateCount=0,(!B.setup||B.setup.call(e,s,ne,h)===!1)&&e.addEventListener&&e.addEventListener(I,h)),B.add&&(B.add.call(e,R),R.handler.guid||(R.handler.guid=n.guid)),c?D.splice(D.delegateCount++,0,R):D.push(R),o.event.global[I]=!0)},remove:function(e,r,n,s,c){var f,h,E,x,F,R,B,D,I,ne,ve,re=le.hasData(e)&&le.get(e);if(!(!re||!(x=re.events))){for(r=(r||"").match(vt)||[""],F=r.length;F--;){if(E=Li.exec(r[F])||[],I=ve=E[1],ne=(E[2]||"").split(".").sort(),!I){for(I in x)o.event.remove(e,I+r[F],n,s,!0);continue}for(B=o.event.special[I]||{},I=(s?B.delegateType:B.bindType)||I,D=x[I]||[],E=E[2]&&new RegExp("(^|\\.)"+ne.join("\\.(?:.*\\.|)")+"(\\.|$)"),h=f=D.length;f--;)R=D[f],(c||ve===R.origType)&&(!n||n.guid===R.guid)&&(!E||E.test(R.namespace))&&(!s||s===R.selector||s==="**"&&R.selector)&&(D.splice(f,1),R.selector&&D.delegateCount--,B.remove&&B.remove.call(e,R));h&&!D.length&&((!B.teardown||B.teardown.call(e,ne,re.handle)===!1)&&o.removeEvent(e,I,re.handle),delete x[I])}o.isEmptyObject(x)&&le.remove(e,"handle events")}},dispatch:function(e){var r,n,s,c,f,h,E=new Array(arguments.length),x=o.event.fix(e),F=(le.get(this,"events")||Object.create(null))[x.type]||[],R=o.event.special[x.type]||{};for(E[0]=x,r=1;r=1)){for(;F!==this;F=F.parentNode||this)if(F.nodeType===1&&!(e.type==="click"&&F.disabled===!0)){for(f=[],h={},n=0;n-1:o.find(c,this,null,[F]).length),h[c]&&f.push(s);f.length&&E.push({elem:F,handlers:f})}}return F=this,x\s*$/g;function Ii(e,r){return Me(e,"table")&&Me(r.nodeType!==11?r:r.firstChild,"tr")&&o(e).children("tbody")[0]||e}function Wn(e){return e.type=(e.getAttribute("type")!==null)+"/"+e.type,e}function jn(e){return(e.type||"").slice(0,5)==="true/"?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Mi(e,r){var n,s,c,f,h,E,x;if(r.nodeType===1){if(le.hasData(e)&&(f=le.get(e),x=f.events,x)){le.remove(r,"handle events");for(c in x)for(n=0,s=x[c].length;n1&&typeof I=="string"&&!U.checkClone&&On.test(I))return e.each(function(ve){var re=e.eq(ve);ne&&(r[0]=I.call(this,ve,re.html())),$t(re,r,n,s)});if(B&&(c=Ur(r,e[0].ownerDocument,!1,e,s),f=c.firstChild,c.childNodes.length===1&&(c=f),f||s)){for(h=o.map(Ze(c,"script"),Wn),E=h.length;R0&&Br(h,!x&&Ze(e,"script")),E},cleanData:function(e){for(var r,n,s,c=o.event.special,f=0;(n=e[f])!==void 0;f++)if(nr(n)){if(r=n[le.expando]){if(r.events)for(s in r.events)c[s]?o.event.remove(n,s):o.removeEvent(n,s,r.handle);n[le.expando]=void 0}n[$e.expando]&&(n[$e.expando]=void 0)}}}),o.fn.extend({detach:function(e){return Ni(this,e,!0)},remove:function(e){return Ni(this,e)},text:function(e){return _t(this,function(r){return r===void 0?o.text(this):this.empty().each(function(){(this.nodeType===1||this.nodeType===11||this.nodeType===9)&&(this.textContent=r)})},null,e,arguments.length)},append:function(){return $t(this,arguments,function(e){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var r=Ii(this,e);r.appendChild(e)}})},prepend:function(){return $t(this,arguments,function(e){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var r=Ii(this,e);r.insertBefore(e,r.firstChild)}})},before:function(){return $t(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return $t(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,r=0;(e=this[r])!=null;r++)e.nodeType===1&&(o.cleanData(Ze(e,!1)),e.textContent="");return this},clone:function(e,r){return e=e==null?!1:e,r=r==null?e:r,this.map(function(){return o.clone(this,e,r)})},html:function(e){return _t(this,function(r){var n=this[0]||{},s=0,c=this.length;if(r===void 0&&n.nodeType===1)return n.innerHTML;if(typeof r=="string"&&!Nn.test(r)&&!Ke[(Wr.exec(r)||["",""])[1].toLowerCase()]){r=o.htmlPrefilter(r);try{for(;s=0&&(x+=Math.max(0,Math.ceil(e["offset"+r[0].toUpperCase()+r.slice(1)]-f-x-E-.5))||0),x}function ur(e,r,n){var s=kr(e),c=!U.boxSizingReliable()||n,f=c&&o.css(e,"boxSizing",!1,s)==="border-box",h=f,E=or(e,r,s),x="offset"+r[0].toUpperCase()+r.slice(1);if(qr.test(E)){if(!n)return E;E="auto"}return(!U.boxSizingReliable()&&f||!U.reliableTrDimensions()&&Me(e,"tr")||E==="auto"||!parseFloat(E)&&o.css(e,"display",!1,s)==="inline")&&e.getClientRects().length&&(f=o.css(e,"boxSizing",!1,s)==="border-box",h=x in e,h&&(E=e[x])),E=parseFloat(E)||0,E+Xr(e,r,n||(f?"border":"content"),h,s,E)+"px"}o.extend({cssHooks:{opacity:{get:function(e,r){if(r){var n=or(e,"opacity");return n===""?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,r,n,s){if(!(!e||e.nodeType===3||e.nodeType===8||!e.style)){var c,f,h,E=bt(r),x=Vr.test(r),F=e.style;if(x||(r=Gr(E)),h=o.cssHooks[r]||o.cssHooks[E],n!==void 0){if(f=typeof n,f==="string"&&(c=Mt.exec(n))&&c[1]&&(n=Or(e,r,c),f="number"),n==null||n!==n)return;f==="number"&&!x&&(n+=c&&c[3]||(o.cssNumber[E]?"":"px")),!U.clearCloneStyle&&n===""&&r.indexOf("background")===0&&(F[r]="inherit"),(!h||!("set"in h)||(n=h.set(e,n,s))!==void 0)&&(x?F.setProperty(r,n):F[r]=n)}else return h&&"get"in h&&(c=h.get(e,!1,s))!==void 0?c:F[r]}},css:function(e,r,n,s){var c,f,h,E=bt(r),x=Vr.test(r);return x||(r=Gr(E)),h=o.cssHooks[r]||o.cssHooks[E],h&&"get"in h&&(c=h.get(e,!0,n)),c===void 0&&(c=or(e,r,s)),c==="normal"&&r in Yr&&(c=Yr[r]),n===""||n?(f=parseFloat(c),n===!0||isFinite(f)?f||0:c):c}}),o.each(["height","width"],function(e,r){o.cssHooks[r]={get:function(n,s,c){if(s)return Ui.test(o.css(n,"display"))&&(!n.getClientRects().length||!n.getBoundingClientRect().width)?Oi(n,lr,function(){return ur(n,r,c)}):ur(n,r,c)},set:function(n,s,c){var f,h=kr(n),E=!U.scrollboxSize()&&h.position==="absolute",x=E||c,F=x&&o.css(n,"boxSizing",!1,h)==="border-box",R=c?Xr(n,r,c,F,h):0;return F&&E&&(R-=Math.ceil(n["offset"+r[0].toUpperCase()+r.slice(1)]-parseFloat(h[r])-Xr(n,r,"border",!1,h)-.5)),R&&(f=Mt.exec(s))&&(f[3]||"px")!=="px"&&(n.style[r]=s,s=o.css(n,r)),Wt(n,s,R)}}}),o.cssHooks.marginLeft=Wi(U.reliableMarginLeft,function(e,r){if(r)return(parseFloat(or(e,"marginLeft"))||e.getBoundingClientRect().left-Oi(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),o.each({margin:"",padding:"",border:"Width"},function(e,r){o.cssHooks[e+r]={expand:function(n){for(var s=0,c={},f=typeof n=="string"?n.split(" "):[n];s<4;s++)c[e+yt[s]+r]=f[s]||f[s-2]||f[0];return c}},e!=="margin"&&(o.cssHooks[e+r].set=Wt)}),o.fn.extend({css:function(e,r){return _t(this,function(n,s,c){var f,h,E={},x=0;if(Array.isArray(s)){for(f=kr(n),h=s.length;x1)}});function Ge(e,r,n,s,c){return new Ge.prototype.init(e,r,n,s,c)}o.Tween=Ge,Ge.prototype={constructor:Ge,init:function(e,r,n,s,c,f){this.elem=e,this.prop=n,this.easing=c||o.easing._default,this.options=r,this.start=this.now=this.cur(),this.end=s,this.unit=f||(o.cssNumber[n]?"":"px")},cur:function(){var e=Ge.propHooks[this.prop];return e&&e.get?e.get(this):Ge.propHooks._default.get(this)},run:function(e){var r,n=Ge.propHooks[this.prop];return this.options.duration?this.pos=r=o.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=r=e,this.now=(this.end-this.start)*r+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):Ge.propHooks._default.set(this),this}},Ge.prototype.init.prototype=Ge.prototype,Ge.propHooks={_default:{get:function(e){var r;return e.elem.nodeType!==1||e.elem[e.prop]!=null&&e.elem.style[e.prop]==null?e.elem[e.prop]:(r=o.css(e.elem,e.prop,""),!r||r==="auto"?0:r)},set:function(e){o.fx.step[e.prop]?o.fx.step[e.prop](e):e.elem.nodeType===1&&(o.cssHooks[e.prop]||e.elem.style[Gr(e.prop)]!=null)?o.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},Ge.propHooks.scrollTop=Ge.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},o.easing={linear:function(e){return e},swing:function(e){return .5-Math.cos(e*Math.PI)/2},_default:"swing"},o.fx=Ge.prototype.init,o.fx.step={};var Jt,Pr,Qr=/^(?:toggle|show|hide)$/,qn=/queueHooks$/;function Jr(){Pr&&(K.hidden===!1&&l.requestAnimationFrame?l.requestAnimationFrame(Jr):l.setTimeout(Jr,o.fx.interval),o.fx.tick())}function p(){return l.setTimeout(function(){Jt=void 0}),Jt=Date.now()}function S(e,r){var n,s=0,c={height:e};for(r=r?1:0;s<4;s+=2-r)n=yt[s],c["margin"+n]=c["padding"+n]=e;return r&&(c.opacity=c.width=e),c}function v(e,r,n){for(var s,c=(_.tweeners[r]||[]).concat(_.tweeners["*"]),f=0,h=c.length;f1)},removeAttr:function(e){return this.each(function(){o.removeAttr(this,e)})}}),o.extend({attr:function(e,r,n){var s,c,f=e.nodeType;if(!(f===3||f===8||f===2)){if(typeof e.getAttribute=="undefined")return o.prop(e,r,n);if((f!==1||!o.isXMLDoc(e))&&(c=o.attrHooks[r.toLowerCase()]||(o.expr.match.bool.test(r)?N:void 0)),n!==void 0){if(n===null){o.removeAttr(e,r);return}return c&&"set"in c&&(s=c.set(e,n,r))!==void 0?s:(e.setAttribute(r,n+""),n)}return c&&"get"in c&&(s=c.get(e,r))!==null?s:(s=o.find.attr(e,r),s==null?void 0:s)}},attrHooks:{type:{set:function(e,r){if(!U.radioValue&&r==="radio"&&Me(e,"input")){var n=e.value;return e.setAttribute("type",r),n&&(e.value=n),r}}}},removeAttr:function(e,r){var n,s=0,c=r&&r.match(vt);if(c&&e.nodeType===1)for(;n=c[s++];)e.removeAttribute(n)}}),N={set:function(e,r,n){return r===!1?o.removeAttr(e,n):e.setAttribute(n,n),n}},o.each(o.expr.match.bool.source.match(/\w+/g),function(e,r){var n=j[r]||o.find.attr;j[r]=function(s,c,f){var h,E,x=c.toLowerCase();return f||(E=j[x],j[x]=h,h=n(s,c,f)!=null?x:null,j[x]=E),h}});var V=/^(?:input|select|textarea|button)$/i,G=/^(?:a|area)$/i;o.fn.extend({prop:function(e,r){return _t(this,o.prop,e,r,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[o.propFix[e]||e]})}}),o.extend({prop:function(e,r,n){var s,c,f=e.nodeType;if(!(f===3||f===8||f===2))return(f!==1||!o.isXMLDoc(e))&&(r=o.propFix[r]||r,c=o.propHooks[r]),n!==void 0?c&&"set"in c&&(s=c.set(e,n,r))!==void 0?s:e[r]=n:c&&"get"in c&&(s=c.get(e,r))!==null?s:e[r]},propHooks:{tabIndex:{get:function(e){var r=o.find.attr(e,"tabindex");return r?parseInt(r,10):V.test(e.nodeName)||G.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),U.optSelected||(o.propHooks.selected={get:function(e){var r=e.parentNode;return r&&r.parentNode&&r.parentNode.selectedIndex,null},set:function(e){var r=e.parentNode;r&&(r.selectedIndex,r.parentNode&&r.parentNode.selectedIndex)}}),o.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){o.propFix[this.toLowerCase()]=this});function Y(e){var r=e.match(vt)||[];return r.join(" ")}function Z(e){return e.getAttribute&&e.getAttribute("class")||""}function ye(e){return Array.isArray(e)?e:typeof e=="string"?e.match(vt)||[]:[]}o.fn.extend({addClass:function(e){var r,n,s,c,f,h;return q(e)?this.each(function(E){o(this).addClass(e.call(this,E,Z(this)))}):(r=ye(e),r.length?this.each(function(){if(s=Z(this),n=this.nodeType===1&&" "+Y(s)+" ",n){for(f=0;f-1;)n=n.replace(" "+c+" "," ");h=Y(n),s!==h&&this.setAttribute("class",h)}}):this):this.attr("class","")},toggleClass:function(e,r){var n,s,c,f,h=typeof e,E=h==="string"||Array.isArray(e);return q(e)?this.each(function(x){o(this).toggleClass(e.call(this,x,Z(this),r),r)}):typeof r=="boolean"&&E?r?this.addClass(e):this.removeClass(e):(n=ye(e),this.each(function(){if(E)for(f=o(this),c=0;c-1)return!0;return!1}});var ke=/\r/g;o.fn.extend({val:function(e){var r,n,s,c=this[0];return arguments.length?(s=q(e),this.each(function(f){var h;this.nodeType===1&&(s?h=e.call(this,f,o(this).val()):h=e,h==null?h="":typeof h=="number"?h+="":Array.isArray(h)&&(h=o.map(h,function(E){return E==null?"":E+""})),r=o.valHooks[this.type]||o.valHooks[this.nodeName.toLowerCase()],(!r||!("set"in r)||r.set(this,h,"value")===void 0)&&(this.value=h))})):c?(r=o.valHooks[c.type]||o.valHooks[c.nodeName.toLowerCase()],r&&"get"in r&&(n=r.get(c,"value"))!==void 0?n:(n=c.value,typeof n=="string"?n.replace(ke,""):n==null?"":n)):void 0}}),o.extend({valHooks:{option:{get:function(e){var r=o.find.attr(e,"value");return r!=null?r:Y(o.text(e))}},select:{get:function(e){var r,n,s,c=e.options,f=e.selectedIndex,h=e.type==="select-one",E=h?null:[],x=h?f+1:c.length;for(f<0?s=x:s=h?f:0;s-1)&&(n=!0);return n||(e.selectedIndex=-1),f}}}}),o.each(["radio","checkbox"],function(){o.valHooks[this]={set:function(e,r){if(Array.isArray(r))return e.checked=o.inArray(o(e).val(),r)>-1}},U.checkOn||(o.valHooks[this].get=function(e){return e.getAttribute("value")===null?"on":e.value})}),U.focusin="onfocusin"in l;var Pe=/^(?:focusinfocus|focusoutblur)$/,We=function(e){e.stopPropagation()};o.extend(o.event,{trigger:function(e,r,n,s){var c,f,h,E,x,F,R,B,D=[n||K],I=W.call(e,"type")?e.type:e,ne=W.call(e,"namespace")?e.namespace.split("."):[];if(f=B=h=n=n||K,!(n.nodeType===3||n.nodeType===8)&&!Pe.test(I+o.event.triggered)&&(I.indexOf(".")>-1&&(ne=I.split("."),I=ne.shift(),ne.sort()),x=I.indexOf(":")<0&&"on"+I,e=e[o.expando]?e:new o.Event(I,typeof e=="object"&&e),e.isTrigger=s?2:3,e.namespace=ne.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+ne.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),r=r==null?[e]:o.makeArray(r,[e]),R=o.event.special[I]||{},!(!s&&R.trigger&&R.trigger.apply(n,r)===!1))){if(!s&&!R.noBubble&&!de(n)){for(E=R.delegateType||I,Pe.test(E+I)||(f=f.parentNode);f;f=f.parentNode)D.push(f),h=f;h===(n.ownerDocument||K)&&D.push(h.defaultView||h.parentWindow||l)}for(c=0;(f=D[c++])&&!e.isPropagationStopped();)B=f,e.type=c>1?E:R.bindType||I,F=(le.get(f,"events")||Object.create(null))[e.type]&&le.get(f,"handle"),F&&F.apply(f,r),F=x&&f[x],F&&F.apply&&nr(f)&&(e.result=F.apply(f,r),e.result===!1&&e.preventDefault());return e.type=I,!s&&!e.isDefaultPrevented()&&(!R._default||R._default.apply(D.pop(),r)===!1)&&nr(n)&&x&&q(n[I])&&!de(n)&&(h=n[x],h&&(n[x]=null),o.event.triggered=I,e.isPropagationStopped()&&B.addEventListener(I,We),n[I](),e.isPropagationStopped()&&B.removeEventListener(I,We),o.event.triggered=void 0,h&&(n[x]=h)),e.result}},simulate:function(e,r,n){var s=o.extend(new o.Event,n,{type:e,isSimulated:!0});o.event.trigger(s,null,r)}}),o.fn.extend({trigger:function(e,r){return this.each(function(){o.event.trigger(e,r,this)})},triggerHandler:function(e,r){var n=this[0];if(n)return o.event.trigger(e,r,n,!0)}}),U.focusin||o.each({focus:"focusin",blur:"focusout"},function(e,r){var n=function(s){o.event.simulate(r,s.target,o.event.fix(s))};o.event.special[r]={setup:function(){var s=this.ownerDocument||this.document||this,c=le.access(s,r);c||s.addEventListener(e,n,!0),le.access(s,r,(c||0)+1)},teardown:function(){var s=this.ownerDocument||this.document||this,c=le.access(s,r)-1;c?le.access(s,r,c):(s.removeEventListener(e,n,!0),le.remove(s,r))}}});var Le=l.location,it={guid:Date.now()},jt=/\?/;o.parseXML=function(e){var r,n;if(!e||typeof e!="string")return null;try{r=new l.DOMParser().parseFromString(e,"text/xml")}catch(s){}return n=r&&r.getElementsByTagName("parsererror")[0],(!r||n)&&o.error("Invalid XML: "+(n?o.map(n.childNodes,function(s){return s.textContent}).join(` `):e)),r};var Kr=/\[\]$/,zi=/\r?\n/g,Zr=/^(?:submit|button|image|reset|file)$/i,ss=/^(?:input|select|textarea|keygen)/i;function ei(e,r,n,s){var c;if(Array.isArray(r))o.each(r,function(f,h){n||Kr.test(e)?s(e,h):ei(e+"["+(typeof h=="object"&&h!=null?f:"")+"]",h,n,s)});else if(!n&&be(r)==="object")for(c in r)ei(e+"["+c+"]",r[c],n,s);else s(e,r)}o.param=function(e,r){var n,s=[],c=function(f,h){var E=q(h)?h():h;s[s.length]=encodeURIComponent(f)+"="+encodeURIComponent(E==null?"":E)};if(e==null)return"";if(Array.isArray(e)||e.jquery&&!o.isPlainObject(e))o.each(e,function(){c(this.name,this.value)});else for(n in e)ei(n,e[n],r,c);return s.join("&")},o.fn.extend({serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=o.prop(this,"elements");return e?o.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!o(this).is(":disabled")&&ss.test(this.nodeName)&&!Zr.test(e)&&(this.checked||!Xt.test(e))}).map(function(e,r){var n=o(this).val();return n==null?null:Array.isArray(n)?o.map(n,function(s){return{name:r.name,value:s.replace(zi,`\r `)}}):{name:r.name,value:n.replace(zi,`\r -`)}}).get()}});var Vn=/%20/g,qi=/#.*$/,Ao=/([?&])_=[^&]*/,Fo=/^(.*?):[ \t]*([^\r\n]*)$/mg,Do=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Lo=/^(?:GET|HEAD)$/,Ro=/^\/\//,os={},Gn={},ls="*/".concat("*"),Yn=K.createElement("a");Yn.href=Le.href;function us(e){return function(r,n){typeof r!="string"&&(n=r,r="*");var s,c=0,f=r.toLowerCase().match(vt)||[];if(q(n))for(;s=f[c++];)s[0]==="+"?(s=s.slice(1)||"*",(e[s]=e[s]||[]).unshift(n)):(e[s]=e[s]||[]).push(n)}}function cs(e,r,n,s){var c={},f=e===Gn;function h(E){var x;return c[E]=!0,o.each(e[E]||[],function(F,R){var B=R(r,n,s);if(typeof B=="string"&&!f&&!c[B])return r.dataTypes.unshift(B),h(B),!1;if(f)return!(x=B)}),x}return h(r.dataTypes[0])||!c["*"]&&h("*")}function Xn(e,r){var n,s,c=o.ajaxSettings.flatOptions||{};for(n in r)r[n]!==void 0&&((c[n]?e:s||(s={}))[n]=r[n]);return s&&o.extend(!0,e,s),e}function Io(e,r,n){for(var s,c,f,h,E=e.contents,x=e.dataTypes;x[0]==="*";)x.shift(),s===void 0&&(s=e.mimeType||r.getResponseHeader("Content-Type"));if(s){for(c in E)if(E[c]&&E[c].test(s)){x.unshift(c);break}}if(x[0]in n)f=x[0];else{for(c in n){if(!x[0]||e.converters[c+" "+x[0]]){f=c;break}h||(h=c)}f=f||h}if(f)return f!==x[0]&&x.unshift(f),n[f]}function Mo(e,r,n,s){var c,f,h,E,x,F={},R=e.dataTypes.slice();if(R[1])for(h in e.converters)F[h.toLowerCase()]=e.converters[h];for(f=R.shift();f;)if(e.responseFields[f]&&(n[e.responseFields[f]]=r),!x&&s&&e.dataFilter&&(r=e.dataFilter(r,e.dataType)),x=f,f=R.shift(),f){if(f==="*")f=x;else if(x!=="*"&&x!==f){if(h=F[x+" "+f]||F["* "+f],!h){for(c in F)if(E=c.split(" "),E[1]===f&&(h=F[x+" "+E[0]]||F["* "+E[0]],h)){h===!0?h=F[c]:F[c]!==!0&&(f=E[0],R.unshift(E[1]));break}}if(h!==!0)if(h&&e.throws)r=h(r);else try{r=h(r)}catch(B){return{state:"parsererror",error:h?B:"No conversion from "+x+" to "+f}}}}return{state:"success",data:r}}o.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Le.href,type:"GET",isLocal:Do.test(Le.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":ls,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":o.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,r){return r?Xn(Xn(e,o.ajaxSettings),r):Xn(o.ajaxSettings,e)},ajaxPrefilter:us(os),ajaxTransport:us(Gn),ajax:function(e,r){typeof e=="object"&&(r=e,e=void 0),r=r||{};var n,s,c,f,h,E,x,F,R,B,D=o.ajaxSetup({},r),I=D.context||D,ne=D.context&&(I.nodeType||I.jquery)?o(I):o.event,ve=o.Deferred(),re=o.Callbacks("once memory"),ze=D.statusCode||{},Ue={},ct={},Fe="canceled",me={readyState:0,getResponseHeader:function(Te){var je;if(x){if(!f)for(f={};je=Fo.exec(c);)f[je[1].toLowerCase()+" "]=(f[je[1].toLowerCase()+" "]||[]).concat(je[2]);je=f[Te.toLowerCase()+" "]}return je==null?null:je.join(", ")},getAllResponseHeaders:function(){return x?c:null},setRequestHeader:function(Te,je){return x==null&&(Te=ct[Te.toLowerCase()]=ct[Te.toLowerCase()]||Te,Ue[Te]=je),this},overrideMimeType:function(Te){return x==null&&(D.mimeType=Te),this},statusCode:function(Te){var je;if(Te)if(x)me.always(Te[me.status]);else for(je in Te)ze[je]=[ze[je],Te[je]];return this},abort:function(Te){var je=Te||Fe;return n&&n.abort(je),st(0,je),this}};if(ve.promise(me),D.url=((e||D.url||Le.href)+"").replace(Ro,Le.protocol+"//"),D.type=r.method||r.type||D.method||D.type,D.dataTypes=(D.dataType||"*").toLowerCase().match(vt)||[""],D.crossDomain==null){E=K.createElement("a");try{E.href=D.url,E.href=E.href,D.crossDomain=Yn.protocol+"//"+Yn.host!=E.protocol+"//"+E.host}catch(Te){D.crossDomain=!0}}if(D.data&&D.processData&&typeof D.data!="string"&&(D.data=o.param(D.data,D.traditional)),cs(os,D,r,me),x)return me;F=o.event&&D.global,F&&o.active++==0&&o.event.trigger("ajaxStart"),D.type=D.type.toUpperCase(),D.hasContent=!Lo.test(D.type),s=D.url.replace(qi,""),D.hasContent?D.data&&D.processData&&(D.contentType||"").indexOf("application/x-www-form-urlencoded")===0&&(D.data=D.data.replace(Vn,"+")):(B=D.url.slice(s.length),D.data&&(D.processData||typeof D.data=="string")&&(s+=(jt.test(s)?"&":"?")+D.data,delete D.data),D.cache===!1&&(s=s.replace(Ao,"$1"),B=(jt.test(s)?"&":"?")+"_="+it.guid+++B),D.url=s+B),D.ifModified&&(o.lastModified[s]&&me.setRequestHeader("If-Modified-Since",o.lastModified[s]),o.etag[s]&&me.setRequestHeader("If-None-Match",o.etag[s])),(D.data&&D.hasContent&&D.contentType!==!1||r.contentType)&&me.setRequestHeader("Content-Type",D.contentType),me.setRequestHeader("Accept",D.dataTypes[0]&&D.accepts[D.dataTypes[0]]?D.accepts[D.dataTypes[0]]+(D.dataTypes[0]!=="*"?", "+ls+"; q=0.01":""):D.accepts["*"]);for(R in D.headers)me.setRequestHeader(R,D.headers[R]);if(D.beforeSend&&(D.beforeSend.call(I,me,D)===!1||x))return me.abort();if(Fe="abort",re.add(D.complete),me.done(D.success),me.fail(D.error),n=cs(Gn,D,r,me),!n)st(-1,"No Transport");else{if(me.readyState=1,F&&ne.trigger("ajaxSend",[me,D]),x)return me;D.async&&D.timeout>0&&(h=l.setTimeout(function(){me.abort("timeout")},D.timeout));try{x=!1,n.send(Ue,st)}catch(Te){if(x)throw Te;st(-1,Te)}}function st(Te,je,ri,Vi){var ft,cr,fr,ot,Kt,xt=je;x||(x=!0,h&&l.clearTimeout(h),n=void 0,c=Vi||"",me.readyState=Te>0?4:0,ft=Te>=200&&Te<300||Te===304,ri&&(ot=Io(D,me,ri)),!ft&&o.inArray("script",D.dataTypes)>-1&&o.inArray("json",D.dataTypes)<0&&(D.converters["text script"]=function(){}),ot=Mo(D,ot,me,ft),ft?(D.ifModified&&(Kt=me.getResponseHeader("Last-Modified"),Kt&&(o.lastModified[s]=Kt),Kt=me.getResponseHeader("etag"),Kt&&(o.etag[s]=Kt)),Te===204||D.type==="HEAD"?xt="nocontent":Te===304?xt="notmodified":(xt=ot.state,cr=ot.data,fr=ot.error,ft=!fr)):(fr=xt,(Te||!xt)&&(xt="error",Te<0&&(Te=0))),me.status=Te,me.statusText=(je||xt)+"",ft?ve.resolveWith(I,[cr,xt,me]):ve.rejectWith(I,[me,xt,fr]),me.statusCode(ze),ze=void 0,F&&ne.trigger(ft?"ajaxSuccess":"ajaxError",[me,D,ft?cr:fr]),re.fireWith(I,[me,xt]),F&&(ne.trigger("ajaxComplete",[me,D]),--o.active||o.event.trigger("ajaxStop")))}return me},getJSON:function(e,r,n){return o.get(e,r,n,"json")},getScript:function(e,r){return o.get(e,void 0,r,"script")}}),o.each(["get","post"],function(e,r){o[r]=function(n,s,c,f){return q(s)&&(f=f||c,c=s,s=void 0),o.ajax(o.extend({url:n,type:r,dataType:f,data:s,success:c},o.isPlainObject(n)&&n))}}),o.ajaxPrefilter(function(e){var r;for(r in e.headers)r.toLowerCase()==="content-type"&&(e.contentType=e.headers[r]||"")}),o._evalUrl=function(e,r,n){return o.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(s){o.globalEval(s,r,n)}})},o.fn.extend({wrapAll:function(e){var r;return this[0]&&(q(e)&&(e=e.call(this[0])),r=o(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&r.insertBefore(this[0]),r.map(function(){for(var n=this;n.firstElementChild;)n=n.firstElementChild;return n}).append(this)),this},wrapInner:function(e){return q(e)?this.each(function(r){o(this).wrapInner(e.call(this,r))}):this.each(function(){var r=o(this),n=r.contents();n.length?n.wrapAll(e):r.append(e)})},wrap:function(e){var r=q(e);return this.each(function(n){o(this).wrapAll(r?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){o(this).replaceWith(this.childNodes)}),this}}),o.expr.pseudos.hidden=function(e){return!o.expr.pseudos.visible(e)},o.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},o.ajaxSettings.xhr=function(){try{return new l.XMLHttpRequest}catch(e){}};var No={0:200,1223:204},ti=o.ajaxSettings.xhr();U.cors=!!ti&&"withCredentials"in ti,U.ajax=ti=!!ti,o.ajaxTransport(function(e){var r,n;if(U.cors||ti&&!e.crossDomain)return{send:function(s,c){var f,h=e.xhr();if(h.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(f in e.xhrFields)h[f]=e.xhrFields[f];e.mimeType&&h.overrideMimeType&&h.overrideMimeType(e.mimeType),!e.crossDomain&&!s["X-Requested-With"]&&(s["X-Requested-With"]="XMLHttpRequest");for(f in s)h.setRequestHeader(f,s[f]);r=function(E){return function(){r&&(r=n=h.onload=h.onerror=h.onabort=h.ontimeout=h.onreadystatechange=null,E==="abort"?h.abort():E==="error"?typeof h.status!="number"?c(0,"error"):c(h.status,h.statusText):c(No[h.status]||h.status,h.statusText,(h.responseType||"text")!=="text"||typeof h.responseText!="string"?{binary:h.response}:{text:h.responseText},h.getAllResponseHeaders()))}},h.onload=r(),n=h.onerror=h.ontimeout=r("error"),h.onabort!==void 0?h.onabort=n:h.onreadystatechange=function(){h.readyState===4&&l.setTimeout(function(){r&&n()})},r=r("abort");try{h.send(e.hasContent&&e.data||null)}catch(E){if(r)throw E}},abort:function(){r&&r()}}}),o.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),o.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return o.globalEval(e),e}}}),o.ajaxPrefilter("script",function(e){e.cache===void 0&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),o.ajaxTransport("script",function(e){if(e.crossDomain||e.scriptAttrs){var r,n;return{send:function(s,c){r=o("